Objective c 在NSDictionary中编辑plist
我正在将plist导入NSDictionary对象,并希望将字典中plist的内容更改为小写。我尝试过几种不同的方法,但都没有成功。也许我应该编辑NSDictionary中的字符串,但是我不知道怎么做 我现在正确地导入了plist,但是小写的行实际上什么都不做Objective c 在NSDictionary中编辑plist,objective-c,plist,nsdictionary,Objective C,Plist,Nsdictionary,我正在将plist导入NSDictionary对象,并希望将字典中plist的内容更改为小写。我尝试过几种不同的方法,但都没有成功。也许我应该编辑NSDictionary中的字符串,但是我不知道怎么做 我现在正确地导入了plist,但是小写的行实际上什么都不做 NSString *contents = [[NSBundle mainBundle] pathForResource:@"Assets/test" ofType:@"plist"]; NSString *newContents = [
NSString *contents = [[NSBundle mainBundle] pathForResource:@"Assets/test" ofType:@"plist"];
NSString *newContents = [contents lowercaseString];
NSDictionary *someDic = [NSDictionary dictionaryWithContentsOfFile:newContents];
for (NSString *someData in someDic) {
NSLog(@"%@ relates to %@", someData, [someDic objectForKey:someData]);
}
我记录了“content”字符串,它给了我一个路径值,所以很明显,将其更改为小写字符串不会起任何作用。我觉得我必须访问字典中的字符串 这条线
NSString *newContents = [contents lowercaseString];
是否更改从返回的路径字符串
NSString *contents = [[NSBundle mainBundle] pathForResource:@"Assets/test" ofType:@"plist"];
因此,您将得到类似../assets/test.plist的结果
您将需要浏览someDic的内容,并根据旧的字符串转换为小写创建一个新词典,如果您只关心someDic中的值,您可以执行以下操作
for( NSString * theKey in someDic )
{
id theObj = [someDic objectForKey:theKey];
if( [theObj isKindOfClass:[NSString class]] )
theObj = [theObj lowercaseString];
[theNewDict setObject:theObj forKey:theKey];
}
我假设您将使用dictionaryWithDictionary来处理第一个字典的属性,但是如何将其中的字符串设置为小写?不只是动态创建新字典,您还是要替换新条目。我必须手动替换每个条目吗?如果某个条目是字典中的数组和字符串呢?我只是不知道该怎么做,也找不到类似的东西。然后你必须递归地做,创建两个函数或方法,一个接受NSArray并返回小写版本,另一个接受NSDictionary并返回小写版本,在这些函数中,当您找到数组或字典时,请使用字典或数组调用数组或字典函数,并将结果插入到您正在创建的数组或字典中。谢谢您的帮助!当我可以的时候,我会回来给你答案的,哈哈。