gpt4 book ai didi

iphone - PST 中所需的 NSDate

转载 作者:行者123 更新时间:2023-12-03 20:16:11 25 4
gpt4 key购买 nike

我想要当前的日期和时间(太平洋标准时间)。我使用了这段代码

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"PST"]];

NSString *timeStamp = [dateFormatter stringFromDate:[NSDate date]];
NSLog(@"String:%@",timeStamp);

它以字符串形式返回 PST 中的正确日期和时间,但我想要 PST 中的 NSDate。所以当我像这样将 NSString 更改为 NSDate 时:

NSDate *currentPST = [dateFormatter dateFromString:timeStamp];
NSLog(@"currentPST Date:%@",currentPST);

它返回 GMT 日期。我已经做了研发,但都是徒劳。输出是:

String:2011-05-18 22:28:54 PDT
currentPST Date:2011-05-19 05:28:54 +0000

任何人都可以提出解决方案吗?

提前致谢

最佳答案

在 Cocoa 中,NSDate 是未应用时区信息的日期的抽象表示。

每当您打印 NSDate 对象时,它都会打印与默认时区(您的设备时区)相对应的日期值。您的设备时区是 GMT,这就是为什么您会得到这样的值。如果你深入研究一下,就会发现两者的时间相同,但时区不同。

关于iphone - PST 中所需的 NSDate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6054246/

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