-2

私はこれを行う方法をしばらく探していましたが、運がありません.. plistファイルのキーに対してチェックされる今日の日付に従って、plistファイルに保存されている値を取得するにはどうすればよいですか.

ここに画像の説明を入力

たとえば、今日の日付が 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"];
4

1 に答える 1

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になります。nil今日の日付が辞書にない場合になります。

于 2013-05-10T04:50:29.293 に答える