gpt4 book ai didi

ios - NSDateFormatter 有时返回 nil

转载 作者:行者123 更新时间:2023-11-28 19:52:47 24 4
gpt4 key购买 nike

我创建了一个 NSDateFormatter,但有时它会根据给定的字符串创建一个 NSDate,有时它不在同一设备(模拟器)上。

这是我的代码:

NSString *lastModifiedString = [metaData objectForKey:@"Last-Modified"];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy hh:mm:ss Z"];
NSDate *onlineModDate = [dateFormatter dateFromString:lastModifiedString];

对于字符串的例子“Fri, 09 Jan 2015 15:08:01 GMT”它返回 nil 但对于“Fri, 12 Dec 2014 09:15:52 GMT”它返回正确的 NSDate。

我尝试在日期格式中添加括号,并尝试将语言环境设置为“en_US_POSIX”,我尝试了一个小 z 而不是一个大 z,但都没有用。

我做错了什么?感谢您的帮助。

最佳答案

NSDateFormatter 遵循 Unicode standard for date and time patterns.在 24 小时制中使用“H”表示小时:

所以在你的代码中,正确的方式应该是:

NSString *lastModifiedString = [metaData objectForKey:@"Last-Modified"];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"];
NSDate *onlineModDate = [dateFormatter dateFromString:lastModifiedString];

关于ios - NSDateFormatter 有时返回 nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28183165/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com