gpt4 book ai didi

objective-c - iOS NSDateFormatter 时区

转载 作者:行者123 更新时间:2023-11-29 11:08:13 24 4
gpt4 key购买 nike

我有一些代码接受一个字符串,把它变成一个日期,重新格式化它然后把它作为另一个字符串输出:

[formatter setDateFormat:@"YYYY'-'MM'-'DD','HH:mm:ss','ZZZ"];
[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"America/New_York"]];
NSDate *date = [formatter dateFromString:combinedString];
[formatter setDateStyle:NSDateFormatterLongStyle];
NSString *finishedString = [formatter stringFromDate:date];

基本上,除了时区,它工作正常。所有输入字符串都在时区 -0400,我希望重新格式化的字符串也处于该时区,但重新格式化的字符串会继续向前转换 4 小时,即使在我添加了 setTimeZone: 行之后.基本上,我根本不想改变时间,我只想重新格式化它,我不明白我做错了什么?

最佳答案

这取决于日期来源中指定的格式。大多数时候我处理 Unix/POSIX 中的日期格式。然后我使用下面两行代码:

[formatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
[formatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] autorelease]];

无论如何,我建议您查看 Apple Developers 网站上的以下问答: http://developer.apple.com/library/ios/#qa/qa1480/_index.html

关于objective-c - iOS NSDateFormatter 时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12772095/

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