为什么dateformatter返回null? objSelectedNote.notedate的类型为NSDate。 [NSDate日期]工作正常...
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-dd"];
NSLog(@"%@", [df stringFromDate:obj_SelectedNote.notedate]);
NSLog(@"%@", obj_SelectedNote.notedate);
NSLog(@"%@", [df stringFromDate:[NSDate date]]);
[df release];
nslog回复:
2011-06-04 10:31:25.441 ail[40632:207] (null)
2011-06-04 10:31:27.828 ail[40632:207] 2011-06-04 00:18:23 -0700
2011-06-04 10:31:30.340 ail[40632:207] 2011-06-04
答案 0 :(得分:1)
事实证明从sqlite检索数据时出现问题。这段代码可以帮我解决。
const char *temp_notedate = (const char *)sqlite3_column_text(selectionStmt, 3);
if(temp_notedate){
NSDateFormatter *df = [[NSDateFormatter alloc] init];
NSString *newstr = [NSString stringWithUTF8String:temp_notedate];
[df setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ"];
NSDate * newdate = [df dateFromString:newstr];
objNotes.notedate = newdate;
}
答案 1 :(得分:0)
我只有一个用户遇到此问题。并且他修改了它在他的设置中从12小时格式切换到24小时。我仍然无法自己重现它。我确实有证据证明这一点!