2015-09-03 57 views
0

我需要保存核心數據的日期,當用戶選擇應用程序的某個部分時,日期顯示爲其本地化格式(例如 中文或法文)。NSDate的核心數據格式化爲本地化

如果我這樣做[NSDate date]如果我沒有弄錯,給我在格林尼治標準時間的日期。

如果我想保存到核心數據,我是這樣設置的嗎?

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

還是必須使用語言環境進行設置?我該怎麼做呢?

或者我只是如上設置日期,然後格式化語言環境,當我從Core Data中檢索後重新創建模型對象?

回答

0

這就是NSDate的整體目的。它爲您提供了一個通用的日期值,然後可以在您希望的任何語言環境中進行解釋。

真的,除非有非常非常好的理由,否則應該總是按照這種方式存儲日期。

您只需在展示數據時將其本地化,通常在屏幕上。您通過獲取用戶的當前本地來完成此操作。

這樣,如果我們兩個人都使用相同的數據,我可以在希伯來語中看到它,並且您可以用法語看到它,我們的時區可以是耶路撒冷和巴黎。

我們可以看到完全相同的時間,但是以我們自己的語言環境格式和本地時區顯示,而無需對數據進行任何轉換。