2012-04-18 87 views
0

用下面的代碼,foo給我當地時間或格林威治標準時間?當地時間與格林尼治標準時間

NSString * foo = [formatter2 stringFromDate:[NSDate dateWithTimeIntervalSinceNow:-2 * 3600]]; 
+0

當你檢查它時發生了什麼? – 2012-04-18 17:39:13

回答

1

flyerid將代表你當前時區的時間減去2小時,是的。這是日期格式化程序的用途,默認情況下,它使用計算機的Locale信息將傳入日期轉換爲最接近用戶期望的表示。這包括使用電腦的時區。 (當然,您可以通過向格式化程序發送setTimeZone:來修改)

日期對象本身沒有時區。這只是時間的一個瞬間,其描述或表示隨着地球上你在哪裏而變化。例如,當約翰列儂宣佈死亡的那一刻在當地時間(格林威治標準時間-5)中表示爲1980年12月8日上午11點15分,但在美國西海岸上空,即上午8點15分,以及在列儂的出生地點,下午4點15分。他只是被宣佈死了一次,儘管 - 同一時刻,不同的閱讀方式。

相關問題