gpt4 book ai didi

iphone - 在Cocoa中,如何使用 NSTimeZone 以字符串形式获取系统时区偏移量?

转载 作者:行者123 更新时间:2023-12-03 16:53:30 24 4
gpt4 key购买 nike

对于 PDT,我想要“-0700”。

我正在获取过去的日期以确定某件事发生了多久。

NSDate *then = [NSDate dateWithString:@"1976-04-01 12:34:56 -0700"]; // Note the hard-coded time zone at the end

我将在其他地方构造日期字符串,但我不知道如何访问本地时区。

我阅读了 Cocoa 的 Apple 日期和时间编程主题以及 NSTimeZone 和 NSDate 类引用,但对我来说将这些信息放在一起太难了。我真的可以使用几行代码来展示它是如何使用的。

更新:在努力解决这个问题时,我正在使用命令行模板编写代码,这样我就可以快速尝试。我刚刚在 iPhone 上尝试了我以前的代码,我得到了 NSDate 可能不会响应 '+dateWithString:' 抱歉,如果这增加了困惑,谁知道 Apple 会改变这样一个基本类。

最佳答案

使用NSDateFormatter从字符串构建NSDate:

NSDateFormatter *inputFormatter = [[NSDateFormatter alloc] init];
[inputFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"];

NSDate *formatterDate;
formatterDate = [inputFormatter dateFromString:@"1976-04-01 12:34:56 -0700"];

NSString *dateString = [inputFormatter stringFromDate:formatterDate];

NSLog(@"date:%@", dateString);

这样就可以从字符串中获取本地时间,例如字符串指定的日期:

"1976-04-01 12:34:56 -0700"

位于时区 -0700,(我位于 GMT +1000 时区),所以我得到:

2009-11-17 22:13:46.480 cmdline[10593:903] date:1976-04-02 05:34:56 +1000

关于iphone - 在Cocoa中,如何使用 NSTimeZone 以字符串形式获取系统时区偏移量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1052373/

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