我總是從日期格式化程序中獲得null。我嘗試了所有其他問題的例子,但沒有幫助。在SubmittedDate的定義日期格式化程序返回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");
看你有
@property (nonatomic, retain) NSDate *SubmittedDate;
我初始化日期Fomatter爲使
- (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]格式化日期爲(空)
- 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;
}
實際值是 「2012年11月21日上午10點47分54秒」
'setDateFormat'和'setDateStyle'是互斥的。 'setDateStyle'將有效地設置一個內置的日期格式。 –
您還需要設置語言環境。 –
我正在翻譯此值「2012年11月21日10:47:54」,NSDate變爲零。但是如果我使用字符串「11/21/2012」NSDate是有效的。我如何創建一個NSDate並保持時間組件?爲了清晰起見,我在問題中添加了json代碼 –