我一直在寻找如何这样做一段时间没有运气.. 如何根据今天的日期检索plist文件中存储的值,该日期是根据plist文件中的Key检查的。
例如,由于今天的日期是2013-05-10,代码应该输出5到控制台(plist文件中的相应键)。 或者例如。今天的日期是2013-05-13,代码应输出6到控制台(plist文件中的相应键。
这是我将plist文件加载到字典中的代码:
NSString *something = [[NSBundle mainBundle]pathForResource:@"Calender" ofType:@"plist"];
_calender = [[NSDictionary alloc]initWithContentsOfFile:something];
NSDate *eventDate = [_calender objectForKey:@"date"];
答案 0 :(得分:2)
您的词典包含键的日期字符串,相应的值是字符串。
加载字典的代码很好。您缺少的部分是从当前日期生成正确的密钥。
NSDateFormatter *df = [[NSDateFormatter alloc] init];
// Use this special locale when generating fixed format date strings
NSLocale *posix = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[df setLocale:posix];
[df setDateFormat:@"yyyy-MM-dd"];
NSString *dateString = [df stringFromDate:[NSDate date]];
现在,您可以使用dateString
作为字典的键来查找值:
NSString *dateValue = _calender[dateString]; // using your misspelling of calendar
dateValue
将为@"5"
,@"6"
或无。如果今天的日期不在字典中,那将是nil
。