Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 基于日期从plist文件检索值_Ios_Objective C_Plist - Fatal编程技术网

Ios 基于日期从plist文件检索值

Ios 基于日期从plist文件检索值,ios,objective-c,plist,Ios,Objective C,Plist,我一直在寻找如何做到这一点已经有一段时间没有运气了。。 如何根据今天的日期检索存储在plist文件中的值,该日期是根据plist文件中的键进行检查的 例如,由于今天的日期是2013年5月10日,代码应向控制台输出5(plist文件中的对应键)。 例如,今天的日期是2013年5月13日,代码应将6输出到控制台(plist文件中的对应键) 下面是我将plist文件加载到字典中的代码: NSString *something = [[NSBundle mainBundle]pathForResour

我一直在寻找如何做到这一点已经有一段时间没有运气了。。 如何根据今天的日期检索存储在plist文件中的值,该日期是根据plist文件中的键进行检查的

例如,由于今天的日期是2013年5月10日,代码应向控制台输出5(plist文件中的对应键)。 例如,今天的日期是2013年5月13日,代码应将6输出到控制台(plist文件中的对应键)

下面是我将plist文件加载到字典中的代码:

NSString *something = [[NSBundle mainBundle]pathForResource:@"Calender" ofType:@"plist"];
_calender = [[NSDictionary alloc]initWithContentsOfFile:something];
NSDate *eventDate = [_calender objectForKey:@"date"];

字典中有键的日期字符串,相应的值是字符串

加载字典的代码没有问题。缺少的部分是从当前日期生成正确的密钥

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。如果今天的日期不在字典中,它将是
nil

这是非常琐碎的,除了启动
NSDictionary
NSDate
的文档之外,什么都不做就可以做到。我现在正在访问该文件并将其创建到字典中,但不确定如何将当前日期与Ke进行比较plist文件中的y如何显示实际使用的代码。NSString*something=[[NSBundle mainBundle]pathForResource:@“plist”类型的“Calender”];_Calender=[[NSDictionary alloc]initWithContentsOfFile:something];NSDate*eventDate=[[u Calender objectForKey:@“date”];