带有核心数据的NSDate格式化用于本地化

时间:2015-09-03 02:22:22

标签: ios core-data nsdate

我需要使用Core Data保存日期,当用户选择应用的某个部分时,日期会以其本地化格式显示(例如  中文或法文)。

如果我这样做[NSDate date],如果我没弄错,请给我GMT的约会时间。

如果我要保存到Core Data,我是这样设置的吗?

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

或者我必须使用区域设置进行设置吗?我该怎么做?

或者我只是按照上面那样设置日期,然后在从Core Data检索后重新制作模型对象时格式化语言环境?

1 个答案:

答案 0 :(得分:0)

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

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

您只需在呈现数据时进行本地化,通常在屏幕上显示。您可以通过获取用户的当前本地来实现此目的。

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

我们会看到完全相同的时间,但是使用我们自己的语言环境格式和本地时区,而不是自己进行任何数据转换。