在 iOS 上将 NSString 转换为 NSDate 的正确方法?

发布于 2024-11-27 08:41:01 字数 314 浏览 1 评论 0原文

我一直在使用这种方法将常规 NSString 对象转换为 NSDate,但尝试向 Apple 提交更新,但遭到拒绝。在 iOS 中还有什么其他方法可以做到这一点?

NSString *date_str = @"2011-08-12T12:20:00Z";
NSDate *the_date = [NSDate dateWithNaturalLanguageString:date_str locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]];

提前致谢!

I've been using this method to convert a regular NSString object to an NSDate, but tried submitting an update to Apple and it was denied. What's another way to do this in iOS?

NSString *date_str = @"2011-08-12T12:20:00Z";
NSDate *the_date = [NSDate dateWithNaturalLanguageString:date_str locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]];

Thanks in advance!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我很OK 2024-12-04 08:41:01

使用 NSDateFormatter。简要示例如下:

...
NSString* dateString = "2011-08-12T12:20:00Z";
NSDateFormatter* fmt = [NSDateFormatter new];
[fmt setDateFormat:"yyyy-MM-dd'T'HH:mm:ss'Z'"];
NSDate* date = [fmt dateFromString:dateString];
[fmt release];
...

请注意,根据 Unicode 技术标准 #35NSDateFormatter 本身不支持单字母时区标识符(即 Z 代表祖鲁时间)。

Use an NSDateFormatter. Brief example follows:

...
NSString* dateString = "2011-08-12T12:20:00Z";
NSDateFormatter* fmt = [NSDateFormatter new];
[fmt setDateFormat:"yyyy-MM-dd'T'HH:mm:ss'Z'"];
NSDate* date = [fmt dateFromString:dateString];
[fmt release];
...

Note that as per Unicode Technical Standard #35, NSDateFormatter doesn't natively support single-letter time-zone identifiers (i.e. Z for zulu time).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文