DateTime構造体は、日付と時刻をひとまとめにして扱うデータ型ですが、単に日時の値を表すだけではなく、DateTimeでは時刻がローカル時刻とUTCのどちらかを表すのか、時刻の種類を明示することができるようになっていて、日時をローカル時刻もしくは世界協定時刻(UTC)として取り扱うことができるようになっています。
DateTime構造体
Imports System
Class Sample
Shared Sub Main()
' 2013年4月1日 午後3時0分30秒
Dim a As New DateTime(2013, 4, 1, 15, 0, 30)
' 2013年4月1日 午後3時0分30秒 (ローカル時刻)
Dim b As New DateTime(2013, 4, 1, 15, 0, 30, DateTimeKind.Local)
' 上の日時を世界協定時間に変換
Dim c As DateTime = b.ToUniversalTime()
' 2013年4月1日 午後3時0分30秒 (世界協定時刻・UTC)
Dim d As New DateTime(2013, 4, 1, 15, 0, 30, DateTimeKind.Utc)
' 上の日時をローカル時刻に変換
Dim e = d.ToLocalTime()
End Sub
End Class
この例で使用しているToLocalTimeメソッドとToUniversalTimeメソッドは、DateTimeの時刻をローカル時刻・UTCの間で変換するためのメソッドです。 ローカル時刻・UTCの変換については個別に解説します。