TimeZoneInfo.ConvertTimeFromUtc(DateTime, TimeZoneInfo) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
世界協定時刻 (UTC) を、指定されたタイム ゾーンの時刻に変換します。
public:
static DateTime ConvertTimeFromUtc(DateTime dateTime, TimeZoneInfo ^ destinationTimeZone);
public static DateTime ConvertTimeFromUtc (DateTime dateTime, TimeZoneInfo destinationTimeZone);
static member ConvertTimeFromUtc : DateTime * TimeZoneInfo -> DateTime
Public Shared Function ConvertTimeFromUtc (dateTime As DateTime, destinationTimeZone As TimeZoneInfo) As DateTime
パラメーター
- dateTime
- DateTime
世界協定時刻 (UTC)。
- destinationTimeZone
- TimeZoneInfo
dateTime
の変換先タイム ゾーン。
戻り値
変換先タイム ゾーンでの日付と時刻。
destinationTimeZone
が Utc の場合、Kind プロパティは Utc。それ以外の場合、Kind プロパティは Unspecified。
例外
destinationTimeZone
が null
です。
例
次の例では、協定世界時 (UTC) を中部標準時に変換します。
DateTime timeUtc = DateTime.UtcNow;
try
{
TimeZoneInfo cstZone = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time");
DateTime cstTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone);
Console.WriteLine("The date and time are {0} {1}.",
cstTime,
cstZone.IsDaylightSavingTime(cstTime) ?
cstZone.DaylightName : cstZone.StandardName);
}
catch (TimeZoneNotFoundException)
{
Console.WriteLine("The registry does not define the Central Standard Time zone.");
}
catch (InvalidTimeZoneException)
{
Console.WriteLine("Registry data on the Central Standard Time zone has been corrupted.");
}
let timeUtc = DateTime.UtcNow
try
let cstZone = TimeZoneInfo.FindSystemTimeZoneById "Central Standard Time"
let cstTime = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone)
printfn $"The date and time are {cstTime} {if cstZone.IsDaylightSavingTime cstTime then cstZone.DaylightName else cstZone.StandardName}."
with
| :? TimeZoneNotFoundException ->
printfn "The registry does not define the Central Standard Time zone."
| :? InvalidTimeZoneException ->
printfn "Registry data on the Central Standard Time zone has been corrupted."
Dim timeUtc As Date = Date.UtcNow
Try
Dim cstZone As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Central Standard Time")
Dim cstTime As Date = TimeZoneInfo.ConvertTimeFromUtc(timeUtc, cstZone)
Console.WriteLine("The date and time are {0} {1}.", _
cstTime, _
IIf(cstZone.IsDaylightSavingTime(cstTime), _
cstZone.DaylightName, cstZone.StandardName))
Catch e As TimeZoneNotFoundException
Console.WriteLine("The registry does not define the Central Standard Time zone.")
Catch e As InvalidTimeZoneException
Console.WriteLine("Registry data on the Central Standard Time zone has been corrupted.")
End Try
注釈
変換を実行するときに、 メソッドは ConvertTimeFromUtc 、タイム ゾーンで有効な調整規則を destinationTimeZone
適用します。
このメソッドの正確な動作は、次の表に Kind 示すように、 パラメーターの プロパティの dateTime
値によって異なります。
DateTime.Kind プロパティ | 変換 |
---|---|
DateTimeKind.Local | をスローします ArgumentException。 |
DateTimeKind.Unspecified または DateTimeKind.Utc | 協定世界時 (UTC) から変換します。 |
のdateTime
変換によって、 より前またはそれより後DateTime.MinValueDateTime.MaxValueの日付と時刻の値が返される場合、このメソッドはそれぞれ または DateTime.MaxValueを返DateTime.MinValueします。
適用対象
こちらもご覧ください
.NET