2010-04-02 66 views
1

在使用NSDate時,有時時區不同。但是我根本不會涉及到語言環境或時區設置。爲什麼我在NSDate對象中獲得不同的時區?

即有時(在同一過程中)一個NSDate對象可能看起來像

1.4.2010 22:01:47 +0100 

,有時像

1.4.2010 22:01:47 +0200 

沒有我做任何事情。什麼觸發時區的變化?我認爲,日曆計算(即增加5個月的日期)不應該這樣做,對吧?

回答

3

正在調整夏令時。在我的機器:

NSDate *now=[NSDate date]; 
NSDate *notNow=[now dateByAddingTimeInterval:(86400 * 250)]; // add 250 days 
NSLog(@"%@", now); 
NSLog(@"%@", notNow); 

輸出

2010-04-02 17:03:25.386 so[14786:a0f] 2010-04-02 17:03:25 +0100 
2010-04-02 17:03:25.388 so[14786:a0f] 2010-12-08 16:03:25 +0000 

這僅僅是一個顯示格式上(隱藏)調用[date description]發生的事情。

+0

有意思。在夏令時方面,我從來沒有想過要改變時區。很高興知道。 – dontWatchMyProfile 2010-04-04 23:11:34