2014-01-11 52 views
0

我正在使用restkit將我的JSON映射到coredate。在這JSON我發現ASP.Net dates。當我嘗試在core date中映射它們時,我有時會看到日期早一天。NSDateformatter從asp.NET日期返回錯誤日期

Date: "/Date(1389740400000+0100)/" 

這是我在我的代碼添加defaultDateFormatter。

RKDotNetDateFormatter *dateFormatter = [RKDotNetDateFormatter new]; 
     [dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss ZZZZ"]; 
     dateFormatter.timeZone = [NSTimeZone defaultTimeZone]; 
     dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]; 

     [RKEntityMapping addDefaultDateFormatter:dateFormatter]; 

有人可以幫助我嗎?

+0

您是如何檢查日期的?日誌記錄通常會應用您當地的時區,以便可能導致感知差異... – Wain

回答

0

嘗試

dateFormatter.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0]; 
+0

我試過但沒有成功。 – Steaphann

0

我懷疑你正在運行到GMT差異。嘗試使用systemTimeZone代替:

dateFormatter.timeZone = [NSTimeZone systemTimeZone]; 
+0

仍然有同樣的問題。有些日期好,但有些不好。 – Steaphann

+0

當我做stringFromDate,我得到這個2014-01-14 23:00:00 +0000 - > normaly這應該是2014-01-15 – Steaphann

+0

這不會是預期的,考慮到最後的'+ 0100'你的例子日期? 2014-01-15 +0100是2014-01-14 23:00:00。 – ethorn10