2013-01-03 44 views
1

解析日期字符串時出現奇怪的問題。我有一個日期格式與格式:具有微秒奇怪行爲的iOS日期格式

yyyy-MM-dd HH:mm:ss.SSSSSSZZ 

和日期字符串:

2012-11-09 10:47:01.999804+01 

dateFromString方法返回零,但是當我更改日期字符串,即:

2012-11-09 10:47:01.989804+01 

它的工作原理。 ..有沒有人有想法,爲什麼微秒值有這樣的限制,我該如何正確解析日期,如上所述?

我可以使用正則表達式來解析它,並切割整個SSSSSS部分,但是通常有時我需要比較日期以便它們不匹配,並且會導致更多問題。

回答

0

我終於解決了這個問題。

我正在修改日期格式和日期字符串以刪除微秒,所以我可以正確解析日期。然後,我只需添加從原始日期字符串解析的微秒。

0

我沒有這樣做小動作的問題結束,終於得到了它的工作,但剝去點秒掉和使用的格式像你說的如下

#define DATEFORMATSTRINGTIMEZONE @"yyyy-MM-dd HH:mm ZZZ"

一點。我不得不承認更多的項目,我意識到這是一個非常困難的分享日期的方法,而是採用了紀元時間,節省了我對時區的所有麻煩......如果你有奢侈品,我會強烈推薦它改變傳入的數據格式。

雖然我不確定你爲什麼不解析,但我會質疑ZZ而不是ZZZ,因爲你有+01不是+1嗎?

+0

很抱歉,我無法更改傳入的日期格式,因此它必須保持原樣。關於時區,它正確解析,你有任何問題嗎? – Bartek