TimeZoneInfo.ConvertTimeToUtc TimeZoneInfo.ConvertTimeToUtc TimeZoneInfo.ConvertTimeToUtc Method

Definition

Konvertiert ein Datum und eine Uhrzeit in Coordinated Universal Time (UTC).Converts a date and time to Coordinated Universal Time (UTC).

Überlädt

ConvertTimeToUtc(DateTime, TimeZoneInfo) ConvertTimeToUtc(DateTime, TimeZoneInfo) ConvertTimeToUtc(DateTime, TimeZoneInfo)

Konvertiert die Zeit in einer angegebenen Zeitzone in Coordinated Universal Time (UTC).Converts the time in a specified time zone to Coordinated Universal Time (UTC).

ConvertTimeToUtc(DateTime) ConvertTimeToUtc(DateTime) ConvertTimeToUtc(DateTime)

Konvertiert das angegebene Datum und die Uhrzeit in Coordinated Universal Time (UTC).Converts the specified date and time to Coordinated Universal Time (UTC).

ConvertTimeToUtc(DateTime, TimeZoneInfo) ConvertTimeToUtc(DateTime, TimeZoneInfo) ConvertTimeToUtc(DateTime, TimeZoneInfo)

Konvertiert die Zeit in einer angegebenen Zeitzone in Coordinated Universal Time (UTC).Converts the time in a specified time zone to Coordinated Universal Time (UTC).

public:
 static DateTime ConvertTimeToUtc(DateTime dateTime, TimeZoneInfo ^ sourceTimeZone);
public static DateTime ConvertTimeToUtc (DateTime dateTime, TimeZoneInfo sourceTimeZone);
static member ConvertTimeToUtc : DateTime * TimeZoneInfo -> DateTime

Parameter

dateTime
DateTime DateTime DateTime

Das Datum und die Uhrzeit, die konvertiert werden sollen.The date and time to convert.

sourceTimeZone
TimeZoneInfo TimeZoneInfo TimeZoneInfo

Die Zeitzone von dateTime.The time zone of dateTime.

Gibt zurück

Die Coordinated Universal Time (UTC), die dem dateTime-Parameter entspricht.The Coordinated Universal Time (UTC) that corresponds to the dateTime parameter. Die DateTime-Eigenschaft des Kind-Objekts ist immer auf Utc festgelegt.The DateTime object's Kind property is always set to Utc.

Ausnahmen

dateTime.KinddateTime.Kind ist Utc, und sourceTimeZone ist nicht gleich Utc.is Utc and sourceTimeZone does not equal Utc.

- oder --or- dateTime.KinddateTime.Kind ist Local, und sourceTimeZone ist nicht gleich Local.is Local and sourceTimeZone does not equal Local.

- oder --or- sourceTimeZone.IsInvalidDateTime(dateTime) gibt true zurück.sourceTimeZone.IsInvalidDateTime(dateTime) returns true.

sourceTimeZone ist null.sourceTimeZone is null.

Beispiele

Im folgenden Beispiel wird das aktuelle Datum aus dem lokalen System abgerufen und in die koordinierte Weltzeit (UTC) konvertiert. Anschließend wird es in die Tokyo-Standardzeit konvertiert und schließlich von der Tokio-Standardzeit wieder in die UTC konvertiert.The following example retrieves the current date from the local system and converts it to Coordinated Universal Time (UTC), then converts it to Tokyo Standard Time, and finally converts from Tokyo Standard Time back to UTC. Beachten Sie, dass die zwei UTC-Zeiten identisch sind.Note that the two UTC times are identical.

using System;

public class Example
{
   public static void Main()
   {
      // Get time in local time zone 
      DateTime thisTime = DateTime.Now;
      Console.WriteLine("Time in {0} zone: {1}", TimeZoneInfo.Local.IsDaylightSavingTime(thisTime) ?
                        TimeZoneInfo.Local.DaylightName : TimeZoneInfo.Local.StandardName, thisTime);
      Console.WriteLine("   UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(thisTime, TimeZoneInfo.Local));
      // Get Tokyo Standard Time zone
      TimeZoneInfo tst = TimeZoneInfo.FindSystemTimeZoneById("Tokyo Standard Time");
      DateTime tstTime = TimeZoneInfo.ConvertTime(thisTime, TimeZoneInfo.Local, tst);      
      Console.WriteLine("Time in {0} zone: {1}", tst.IsDaylightSavingTime(tstTime) ?
                        tst.DaylightName : tst.StandardName, tstTime);
      Console.WriteLine("   UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(tstTime, tst));
   }
}
// The example displays output like the following when run on a system in the
// U.S. Pacific Standard Time zone:
//       Time in Pacific Standard Time zone: 12/6/2013 10:57:51 AM
//          UTC Time: 12/6/2013 6:57:51 PM
//       Time in Tokyo Standard Time zone: 12/7/2013 3:57:51 AM
//          UTC Time: 12/6/2013 6:57:51 PM
Module Example
   Public Sub Main()
      ' Get time in local time zone 
      Dim thisTime As Date = Date.Now
      Console.WriteLine("Time in {0} zone: {1}", IIf(TimeZoneInfo.Local.IsDaylightSavingTime(thisTime), 
                        TimeZoneInfo.Local.DaylightName, TimeZoneInfo.Local.StandardName), thisTime)
      Console.WriteLine("   UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(thisTime, TimeZoneInfo.Local))
      ' Get Tokyo Standard Time zone
      Dim tst As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Tokyo Standard Time")
      Dim tstTime As Date = TimeZoneInfo.ConvertTime(thisTime, TimeZoneInfo.Local, tst)      
      Console.WriteLine("Time in {0} zone: {1}", IIf(tst.IsDaylightSavingTime(tstTime), 
                        tst.DaylightName, tst.StandardName), tstTime)
      Console.WriteLine("   UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(tstTime, tst))
   End Sub
End Module
' The example displays output like the following when run on a system in the U.S.
' Pacific Standard Time zone:
'    Time in Pacific Standard Time zone: 12/6/2013 10:57:51 AM
'       UTC Time: 12/6/2013 6:57:51 PM
'    Time in Tokyo Standard Time zone: 12/7/2013 3:57:51 AM
'       UTC Time: 12/6/2013 6:57:51 PM

Hinweise

Wenn die Kind DateTimeKind.Utc -Eigenschaft dateTime des-Parameters TimeZoneInfo.Utcist sourceTimeZone und der-Parameter ist, dateTime gibt diese Methode zurück, ohne dass eine Konvertierung durchgeführt wird.If the Kind property of the dateTime parameter equals DateTimeKind.Utc and the sourceTimeZone parameter equals TimeZoneInfo.Utc, this method returns dateTime without performing any conversion.

Wenn dateTime einer mehrdeutigen Zeit entspricht, geht diese Methode davon aus, dass es sich um die Standardzeit der Quell Zeitzone handelt.If dateTime corresponds to an ambiguous time, this method assumes that it is the standard time of the source time zone. Wenn dateTime einem ungültigen Zeitpunkt entspricht, löst diese Methode eine ArgumentExceptionaus.If dateTime corresponds to an invalid time, this method throws an ArgumentException.

Wenn der koordinierten Weltzeit (Coordinated Universal Time, UTC)-Äquivalent dateTime liegt vor DateTime.MinValue oder höher, DateTime.MaxValue, gibt diese Methode MinValue oder MaxValuebzw.If the Coordinated Universal Time (UTC) equivalent of dateTime is earlier than DateTime.MinValue or later that DateTime.MaxValue, this method returns MinValue or MaxValue, respectively.

Siehe auch

ConvertTimeToUtc(DateTime) ConvertTimeToUtc(DateTime) ConvertTimeToUtc(DateTime)

Konvertiert das angegebene Datum und die Uhrzeit in Coordinated Universal Time (UTC).Converts the specified date and time to Coordinated Universal Time (UTC).

public:
 static DateTime ConvertTimeToUtc(DateTime dateTime);
public static DateTime ConvertTimeToUtc (DateTime dateTime);
static member ConvertTimeToUtc : DateTime -> DateTime

Parameter

dateTime
DateTime DateTime DateTime

Das Datum und die Uhrzeit, die konvertiert werden sollen.The date and time to convert.

Gibt zurück

Die Coordinated Universal Time (UTC), die dem dateTime-Parameter entspricht.The Coordinated Universal Time (UTC) that corresponds to the dateTime parameter. Die DateTime-Eigenschaft des Kind-Werts ist immer auf Utc festgelegt.The DateTime value's Kind property is always set to Utc.

Ausnahmen

TimeZoneInfo.Local.IsInvalidDateTime( dateTime ) gibt true zurück.TimeZoneInfo.Local.IsInvalidDateTime( dateTime ) returns true.

Beispiele

Das folgende Beispiel veranschaulicht die Konvertierung der Werte, deren Kind Eigenschaft DateTimeKind.Utc, DateTimeKind.Local, und DateTimeKind.Unspecifiedbzw.The following example illustrates the conversion of time values whose Kind property is DateTimeKind.Utc, DateTimeKind.Local, and DateTimeKind.Unspecified, respectively. Außerdem wird die Konvertierung mehrdeutiger und Ungültiger Zeiten veranschaulicht.It also illustrates the conversion of ambiguous and invalid times.

DateTime datNowLocal = DateTime.Now;
Console.WriteLine("Converting {0}, Kind {1}:", datNowLocal, datNowLocal.Kind);
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNowLocal), TimeZoneInfo.ConvertTimeToUtc(datNowLocal).Kind);
Console.WriteLine();

DateTime datNowUtc = DateTime.UtcNow;
Console.WriteLine("Converting {0}, Kind {1}", datNowUtc, datNowUtc.Kind);
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNowUtc), TimeZoneInfo.ConvertTimeToUtc(datNowUtc).Kind);
Console.WriteLine();

DateTime datNow = new DateTime(2007, 10, 26, 13, 32, 00);
Console.WriteLine("Converting {0}, Kind {1}", datNow, datNow.Kind);
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNow), TimeZoneInfo.ConvertTimeToUtc(datNow).Kind);
Console.WriteLine();

DateTime datAmbiguous = new DateTime(2007, 11, 4, 1, 30, 00);    
Console.WriteLine("Converting {0}, Kind {1}, Ambiguous {2}", datAmbiguous, datAmbiguous.Kind, TimeZoneInfo.Local.IsAmbiguousTime(datAmbiguous));
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datAmbiguous), TimeZoneInfo.ConvertTimeToUtc(datAmbiguous).Kind);
Console.WriteLine();

DateTime datInvalid = new DateTime(2007, 3, 11, 02, 30, 00);    
Console.WriteLine("Converting {0}, Kind {1}, Invalid {2}", datInvalid, datInvalid.Kind, TimeZoneInfo.Local.IsInvalidTime(datInvalid));
try
{
   Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datInvalid), TimeZoneInfo.ConvertTimeToUtc(datInvalid).Kind);
}
catch (ArgumentException e)
{   
   Console.WriteLine("   {0}: Cannot convert {1} to UTC.", e.GetType().Name, datInvalid);
}
Console.WriteLine();

DateTime datNearMax = new DateTime(9999, 12, 31, 22, 00, 00);
Console.WriteLine("Converting {0}, Kind {1}", datNearMax, datNearMax.Kind);
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNearMax), TimeZoneInfo.ConvertTimeToUtc(datNearMax).Kind);
Console.WriteLine();
//
// This example produces the following output if the local time zone 
// is Pacific Standard Time:
//
//    Converting 8/31/2007 2:26:28 PM, Kind Local:
//       ConvertTimeToUtc: 8/31/2007 9:26:28 PM, Kind Utc
//    
//    Converting 8/31/2007 9:26:28 PM, Kind Utc
//       ConvertTimeToUtc: 8/31/2007 9:26:28 PM, Kind Utc
//    
//    Converting 10/26/2007 1:32:00 PM, Kind Unspecified
//       ConvertTimeToUtc: 10/26/2007 8:32:00 PM, Kind Utc
//    
//    Converting 11/4/2007 1:30:00 AM, Kind Unspecified, Ambiguous True
//       ConvertTimeToUtc: 11/4/2007 9:30:00 AM, Kind Utc
//    
//    Converting 3/11/2007 2:30:00 AM, Kind Unspecified, Invalid True
//       ArgumentException: Cannot convert 3/11/2007 2:30:00 AM to UTC.
//    
//    Converting 12/31/9999 10:00:00 PM, Kind Unspecified
//       ConvertTimeToUtc: 12/31/9999 11:59:59 PM, Kind Utc
// 
Dim datNowLocal As Date = Date.Now
Console.WriteLine("Converting {0}, Kind {1}:", datNowLocal, datNowLocal.Kind)
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNowLocal), TimeZoneInfo.ConvertTimeToUtc(datNowLocal).Kind)
Console.WriteLine()

Dim datNowUtc As Date = Date.UtcNow
Console.WriteLine("Converting {0}, Kind {1}", datNowUtc, datNowUtc.Kind)
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNowUtc), TimeZoneInfo.ConvertTimeToUtc(datNowUtc).Kind)
Console.WriteLine()

Dim datNow As Date = CDate("10/26/2007 1:32:00 PM")
Console.WriteLine("Converting {0}, Kind {1}", datNow, datNow.Kind)
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNow), TimeZoneInfo.ConvertTimeToUtc(datNow).Kind)
Console.WriteLine()

Dim datAmbiguous As Date = #11/4/2007 1:30:00AM#    
Console.WriteLine("Converting {0}, Kind {1}, Ambiguous {2}", datAmbiguous, datAmbiguous.Kind, TimeZoneInfo.Local.IsAmbiguousTime(datAmbiguous))
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datAmbiguous), TimeZoneInfo.ConvertTimeToUtc(datAmbiguous).Kind)
Console.WriteLine()

Dim datInvalid As Date = #03/11/2007 2:30:00AM#    
Console.WriteLine("Converting {0}, Kind {1}, Invalid {2}", datInvalid, datInvalid.Kind, TimeZoneInfo.Local.IsInvalidTime(datInvalid))
Try
   Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datInvalid), TimeZoneInfo.ConvertTimeToUtc(datInvalid).Kind)
Catch e As ArgumentException
   Console.WriteLine("   {0}: Cannot convert {1} to UTC.", e.GetType().Name, datInvalid)
End Try
Console.WriteLine()

Dim datNearMax As Date = #12/31/9999 10:00:00PM#
Console.WriteLine("Converting {0}, Kind {1}", datNearMax, datNearMax.Kind)
Console.WriteLine("   ConvertTimeToUtc: {0}, Kind {1}", TimeZoneInfo.ConvertTimeToUtc(datNearMax), TimeZoneInfo.ConvertTimeToUtc(datNearMax).Kind)
Console.WriteLine()
'
' This example produces the following output if the local time zone 
' is Pacific Standard Time:
'
'    Converting 8/31/2007 2:26:28 PM, Kind Local:
'       ConvertTimeToUtc: 8/31/2007 9:26:28 PM, Kind Utc
'    
'    Converting 8/31/2007 9:26:28 PM, Kind Utc
'       ConvertTimeToUtc: 8/31/2007 9:26:28 PM, Kind Utc
'    
'    Converting 10/26/2007 1:32:00 PM, Kind Unspecified
'       ConvertTimeToUtc: 10/26/2007 8:32:00 PM, Kind Utc
'    
'    Converting 11/4/2007 1:30:00 AM, Kind Unspecified, Ambiguous True
'       ConvertTimeToUtc: 11/4/2007 9:30:00 AM, Kind Utc
'    
'    Converting 3/11/2007 2:30:00 AM, Kind Unspecified, Invalid True
'       ArgumentException: Cannot convert 3/11/2007 2:30:00 AM to UTC.
'    
'    Converting 12/31/9999 10:00:00 PM, Kind Unspecified
'       ConvertTimeToUtc: 12/31/9999 11:59:59 PM, Kind Utc

Hinweise

Die genaue Konvertierung hängt vom Wert der Kind -Eigenschaft dateTime des-Parameters ab, wie in der folgenden Tabelle gezeigt.The exact conversion performed depends on the value of the Kind property of the dateTime parameter, as the following table shows.

DateTime. Kind-EigenschaftDateTime.Kind property UmwandelnConversion
DateTimeKind.Local Konvertiert von der Ortszeit in die koordinierte Weltzeit (UTC).Converts from local time to Coordinated Universal Time (UTC).
DateTimeKind.Unspecified Nimmt dateTime an, dass Ortszeit ist, und konvertiert von Ortszeit in UTC.Assumes dateTime is local time and converts from local time to UTC.
DateTimeKind.Utc Gibt dateTime unverändert zurück.Returns dateTime unchanged.

Wenn dateTime einer mehrdeutigen Ortszeit entspricht, geht diese Methode davon aus, dass es sich um eine Standard Ortszeit handelt.If dateTime corresponds to an ambiguous local time, this method assumes that it is standard local time. Wenn dateTime einer ungültigen Ortszeit entspricht, löst die Methode eine ArgumentExceptionaus.If dateTime corresponds to an invalid local time, the method throws an ArgumentException.

Hinweis

Wenn die lokale Zeitzone des aktuellen Computers mehrere Anpassungsregeln enthält, kann diese über ConvertTimeToUtc Ladung der-Methode Ergebnisse zurückgeben, die sich von der-Methode und der TimeZone.ToUniversalTime - DateTime.ToUniversalTime Methode unterscheiden.If the current computer's local time zone includes multiple adjustment rules, this overload of the ConvertTimeToUtc method can return results that differ from the TimeZone.ToUniversalTime and DateTime.ToUniversalTime methods. TimeZone.ToUniversalTimewendet die aktuelle Anpassungs Regel immer auf die Zeit Zonen Konvertierung an, unabhängig dateTime davon, ob Sie in Ihrem Datumsbereich liegt oder nicht.TimeZone.ToUniversalTime always applies the current adjustment rule to time zone conversion, whether or not dateTime lies within its date range. Und bei der Ausführung .NET Framework 3,5.NET Framework 3.5von DateTime.ToUniversalTime wird von auch die aktuelle Anpassungs Regel auf die Zeit Zonen Konvertierung angewendet, dateTime unabhängig davon, ob der Datumsbereich liegt oder nicht.And when executing on .NET Framework 3,5.NET Framework 3.5, DateTime.ToUniversalTime also applies the current adjustment rule to time zone conversion, whether or not dateTime lies within its date range.

Wenn die UTC-Entsprechung der dateTime liegt vor DateTime.MinValue oder höher, DateTime.MaxValue, gibt diese Methode MinValue oder MaxValuebzw.If the UTC equivalent of dateTime is earlier than DateTime.MinValue or later that DateTime.MaxValue, this method returns MinValue or MaxValue, respectively.

Siehe auch

Gilt für: