如果我尝试:
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyyMMdd"];
和
[formatter dateFromString:@"20120423"];
我的新NSDate对象将是:2012 04 22 。为什么减少一天?
感谢
答案 0 :(得分:22)
您遇到时区问题,可以通过添加以下代码来解决:
formatter.timeZone = [NSTimeZone timeZoneWithName:@"GMT"];
答案 1 :(得分:3)
对于那些寻找 swift 3 版本
的人let formatter = DateFormatter()
formatter.timezone = TimeZone(abbreviation: "GMT")
formatter.dateFormat = "yyyyMMdd"
formatter.date(from: "20120423")
答案 2 :(得分:0)
对于使用 Swift 3
的一个衬垫Date.init(dateString: "2014-07-31", format: "yyyy-MM-dd", timeZone: TimeZone.init(abbreviation: "GMT")!)