2015-09-03 60 views
0

我需要保存核心数据的日期,当用户选择应用程序的某个部分时,日期显示为其本地化格式(例如 中文或法文)。NSDate的核心数据格式化为本地化

如果我这样做[NSDate date]如果我没有弄错,给我在格林尼治标准时间的日期。

如果我想保存到核心数据,我是这样设置的吗?

[objectToSave setValue:[NSDate date] forKey:@"date"]; 

还是必须使用语言环境进行设置?我该怎么做呢?

或者我只是如上设置日期,然后格式化语言环境,当我从Core Data中检索后重新创建模型对象?

回答

0

这就是NSDate的整体目的。它为您提供了一个通用的日期值,然后可以在您希望的任何语言环境中进行解释。

真的,除非有非常非常好的理由,否则应该总是按照这种方式存储日期。

您只需在展示数据时将其本地化,通常在屏幕上。您通过获取用户的当前本地来完成此操作。

这样,如果我们两个人都使用相同的数据,我可以在希伯来语中看到它,并且您可以用法语看到它,我们的时区可以是耶路撒冷和巴黎。

我们可以看到完全相同的时间,但是以我们自己的语言环境格式和本地时区显示,而无需对数据进行任何转换。