日付フォーマッターから常にnullを取得しています。私は他のすべての質問で例を試しましたが、役に立ちませんでした。
NSLog(@"Date is %@", summaryItem.SubmittedDate);
NSLog(@"Formatted Date is %@", [df stringFromDate: summaryItem.SubmittedDate ]);
BOOL isDate = [summaryItem.SubmittedDate isKindOfClass: [NSDate class]];
NSLog(@"Date %@ a date.", isDate ? @"is" : @"is not");
あなたが持っているSubmittedDateの定義を見てください
@property (nonatomic, retain) NSDate *SubmittedDate;
私はそのように日付形式を初期化しています
- (void) initDateFormatter {
if( df == nil ) {
df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MM/dd/yyyy"];
[df setDateStyle:NSDateFormatterShortStyle];
}
}
- ログへの出力:
- 2012-11-21 10:00:41.650 Mobile_v2 [4093:f803]日付は11/21/2012 10:00:41 AM
- 2012-11-21 10:00:41.651 Mobile_v2 [4093:f803]フォーマットされた日付は(null)
- 2012-11-21 10:00:41.681 Mobile_v2 [4093:f803]日付は日付ではありません。
誰かが何が悪いのかわかりますか?日付形式が間違っていますか?
私のSBJsonクラスのコード
NSString *newDate = (NSString *)[receivedObjects objectForKey:@"SubmittedDate"];
NSDate *submittedDate = [df dateFromString:newDate]; //(NSDate *)
if ((NSNull *) submittedDate == [NSNull null]) {
self.SubmittedDate = nil;
} else {
self.SubmittedDate = submittedDate;
}
実際の値は「11/21/201210:47:54AM」です。