我有以下代码,只是获取当前日期并将其转换为格式YYYY-MM-dd HH:mm:ss zzz
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat: @"YYYY-MM-dd HH:mm:ss zzz"];
NSTimeZone *currentTimeZone = [NSTimeZone localTimeZone];
[dateFormatter setTimeZone:currentTimeZone];
NSString *time = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"TIME IS %@", time);
有了这个,我得到以下日志输出:
2014-12-30 00:20:38.987 MYAPPNAME[953:229825] TIME IS 2015-12-30 00:20:38 CST
有人可以告诉我为什么输出显示为2015年,而不是2014年应该是什么?
答案 0 :(得分:4)
yyyy
指定日历年,而YYYY
指定年份(“年度周”)
您必须从
更改dateformatter
样式
[dateFormatter setDateFormat: @"YYYY-MM-dd HH:mm:ss zzz"];
到
[dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:ss zzz"];
供您参考,请查看此apple documentation
答案 1 :(得分:1)
更改日期格式
答案 2 :(得分:0)
试试这个:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:ss zzz"];
NSTimeZone *currentTimeZone = [NSTimeZone localTimeZone];
[dateFormatter setTimeZone:currentTimeZone];
NSString *time = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"TIME IS %@", time);
有关NSDateFormatter的更多详细信息,请阅读: