我已经看过很多关于这个主题的帖子,但我无法解决我的问题/我想我的格式日期有问题,但我不知道哪一个。
dateStr = @"Thu, 19 Dec 2013 13:33:58 +0000" // My string I want to convert
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE, dd MMM y HH:m:s Z"]; // Here might be the issue
NSLog(@"Date: %@", [dateFormatter dateFromString:dateStr]);
输出是:
2014-04-02 16:51:02.871 MyApp[3957:60b] Date: (null)
我尝试了一些不同的格式,但我总是得到null NSDate。
我从Dropbox API中检索字符串,在文档中说明格式为:
"%a, %d %b %Y %H:%M:%S %z" with strftime or strptime
由于
答案 0 :(得分:0)
我注意到Dropbox“修改”文件日期元数据的NSDate转换仅适用于众所周知的语言环境,因此我使用了这种天真的方法
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setLocale: [[NSLocale alloc] initWithLocaleIdentifier: @"en_US"]];
dateFormatter.dateFormat = @"EEE, dd MMM yyyy HH:mm:ss Z";
NSDate *dateModified = [dateFormatter dateFromString:dropboxDictionay[@"modified"]];
[dateFormatter setLocale: [[NSLocale alloc] initWithLocaleIdentifier: [[NSLocale currentLocale] localeIdentifier]]];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[self.dateFormatter setTimeStyle:NSDateFormatterShortStyle];
myLabel.text = [dateFormatter stringFromDate:dateModified];
并为我工作......
迪米瑞斯