【发布时间】:2012-02-21 15:34:37
【问题描述】:
我正在编写一个应用程序,它需要显示和计算来自欧洲特定给定时区的所有日期、时间、时间间隔等。意思是,如果我在巴黎,该应用程序现在可以完美运行,但如果我去纽约,该应用程序应该像我还在巴黎一样显示和工作。
天真地,我尝试了(在application: didFinishLaunchingWithOptions: 函数中)
[[NSCalendar currentCalendar] setTimeZone:[NSTimeZone timeZoneWithName:@"Europe/Paris"]];
但这当然行不通,如果没有明确告知,我所有的 NSDateFormatter 对象仍然使用当前时区。
所以,我想知道的是:
有没有办法在应用程序中全局强制执行时区?如果有其他方法,我宁愿不检查所有代码并修复每个日期格式化程序和日期选择器等等。
[NSTimeZone timeZoneWithName:@"Europe/Paris"]会在 CET 和 CEST 之间正确切换吗?
先谢谢了!
【问题讨论】:
标签: ios nsdate nsdateformatter nstimezone