System.TimeZoneInfo.ConvertTimeToUtc 方法 (DateTime, TimeZoneInfo)
方法描述
将指定时区中的时间转换为协调世界时 (UTC)。
语法定义(C# System.TimeZoneInfo.ConvertTimeToUtc 方法 (DateTime, TimeZoneInfo) 的用法)
public static DateTime ConvertTimeToUtc( DateTime dateTime, TimeZoneInfo sourceTimeZone )
参数/返回值
| 参数值/返回值 | 参数类型/返回类型 | 参数描述/返回描述 | 
|---|---|---|
| dateTime | System-DateTime | 要转换的日期和时间。 | 
| sourceTimeZone | System-TimeZoneInfo | dateTime 的时区。 | 
| 返回值 | System.DateTime | 与 dateTime 参数对应的协调世界时 (UTC)。 DateTime 对象的 Kind 属性始终设置为 DateTimeKind.Utc。 | 
提示和注释
如果 dateTime 参数的 Kind 属性等于 DateTimeKind.Utc,并且 sourceTimeZone 参数等于 TimeZoneInfo.Utc,则此方法返回 dateTime,而不执行任何转换。
如果 dateTime 对应于不明确的时间,则此方法假定其为源时区的标准时间。 如果 dateTime 对应于无效时间,则此方法会引发 ArgumentException。
如果等于 dateTime 的协调世界时 (UTC) 早于 DateTime.MinValue 或晚于 DateTime.MaxValue,则此方法分别返回 MinValue 或 MaxValue。
对调用者的说明
在 Windows XP 系统中,如果 sourceTimeZone 是 TimeZoneInfo.Local,那么该方法只将当前调整规则应用于时区转换。 因此,该方法在当前调整规则生效之前可能无法准确转换时间段。更多信息,请参见 Local 属性中的调用节说明。
System.TimeZoneInfo.ConvertTimeToUtc 方法 (DateTime, TimeZoneInfo)例子
请注意,这两个 UTC 时间是相同的。
// 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}", TimeZoneInfo.Local.IsDaylightSavingTime(tstTime) ?
                  tst.DaylightName : tst.StandardName, tstTime);
Console.WriteLine("   UTC Time: {0}", TimeZoneInfo.ConvertTimeToUtc(tstTime, tst));
异常
| 异常 | 异常描述 | 
|---|---|
| ArgumentException | 
 | 
| ArgumentNullException | sourceTimeZone 为 null。 | 
版本信息
.NET Framework 受以下版本支持:4、3.5 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1
适用平台
Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。