時間和時區
更新:2007 年 11 月
除了基本 DateTime 結構之外,.NET Framework 還提供下列支援使用時區的類別:
-
使用這個類別搭配系統的本地時區及 Coordinated Universal Time (UTC) 時區。TimeZone 類別的功能大致上已由 TimeZoneInfo 類別替代。
-
使用這個類別搭配系統上預先定義的任何時區、建立新時區,以及在各時區之間輕鬆轉換日期和時間。在開發新程式時,請使用 TimeZoneInfo 類別而非 TimeZone 類別。
-
使用這個結構搭配已知與 UTC 之間偏移 (或差異) 的日期和時間。DateTimeOffset 結構會將日期和時間值,以及該時間與 UTC 之間的偏移組合在一起。基於該時間與 UTC 之間的關聯性,個別日期和時間值會明確識別單一時間點。如此可讓 DateTimeOffset 值比 DateTime 值更容易在電腦之間移動。
本節將提供使用時區,以及建立在時區之間轉換日期和時間的時區感知應用程式時所需的資訊。
在本節中
討論建立時區感知應用程式時涉及的術語、概念與問題。
在 DateTime、DateTimeOffset 和 TimeZoneInfo 之間選擇
討論搭配日期和時間資料時,使用 DateTime、DateTimeOffset 和 TimeZoneInfo 型別的時機。
描述如何列舉本機系統上找到的時區。
提供範例,列舉電腦登錄中定義的時區,以及允許使用者選取清單中預先定義的時區。
描述如何存取 Coordinated Universal Time 和本機時區。
描述如何從本機系統登錄中將 TimeZoneInfo 物件執行個體化。
討論可執行個體化 DateTimeOffset 物件的方式,以及可將 DateTime 值轉換成 DateTimeOffset 的方式。
描述如何建立不支援日光節約時間轉換的自訂時區。
描述如何建立支援一個或多個日光節約時間轉換的自訂時區。
描述序列化和還原序列化時區資料的 TimeZoneInfo 支援,以及說明一些使用案例。
描述如何建立自訂時區以及將其資訊儲存到資源檔中。
描述如何執行個體化儲存到內嵌資源檔的自訂時區。
討論加、減及比較 DateTime 和 DateTimeOffset 值涵蓋的問題。
討論如何執行日期和時間算術,以反映出時區的調整規則。
在 DateTime 和 DateTimeOffset 之間轉換
描述如何在 DateTime 和 DateTimeOffset 值之間轉換。
描述如何在時區之間轉換。
描述如何藉由對應時區的標準時間來解析不明確的時間。
描述如何讓使用者決定不明確的本機時間與 Coordinated Universal Time 之間的對應。