我必须在没有任何时区信息的情况下解析2012-06-06T18:00:00
或2012-06-06
等字符串。当我解析这个时,日期格式化程序使用本地时区并考虑DST。
但日期实际意味着该事件发生在2012-06-06
上,不依赖于时区,而是在每个时区的2012-06-06T00:00:00
上。
我应该单独存储年/月/日值吗?
答案 0 :(得分:2)
在不同时区的同一时间将对应于不同的绝对时间(由NSDate表示)。因此,一个NSDate对象无法表示您要表示的内容。每个您感兴趣的时区需要一个NSDate。
您可以使用字符串创建NSDateComponent实例。然后将NSCalender与要将这些日期组件转换为NSDate(时间点)的区域设置(时区)一起使用。