TimeZoneInfo 类

定义

表示世界上的任何时区。

public ref class TimeZoneInfo sealed : IEquatable<TimeZoneInfo ^>
public ref class TimeZoneInfo sealed : IEquatable<TimeZoneInfo ^>, System::Runtime::Serialization::IDeserializationCallback, System::Runtime::Serialization::ISerializable
public sealed class TimeZoneInfo : IEquatable<TimeZoneInfo>
public sealed class TimeZoneInfo : IEquatable<TimeZoneInfo>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
[System.Serializable]
public sealed class TimeZoneInfo : IEquatable<TimeZoneInfo>, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
type TimeZoneInfo = class
    interface IEquatable<TimeZoneInfo>
type TimeZoneInfo = class
    interface IEquatable<TimeZoneInfo>
    interface IDeserializationCallback
    interface ISerializable
type TimeZoneInfo = class
    interface IEquatable<TimeZoneInfo>
    interface ISerializable
    interface IDeserializationCallback
type TimeZoneInfo = class
    interface IDeserializationCallback
    interface ISerializable
    interface IEquatable<TimeZoneInfo>
[<System.Serializable>]
type TimeZoneInfo = class
    interface IEquatable<TimeZoneInfo>
    interface ISerializable
    interface IDeserializationCallback
Public NotInheritable Class TimeZoneInfo
Implements IEquatable(Of TimeZoneInfo)
Public NotInheritable Class TimeZoneInfo
Implements IDeserializationCallback, IEquatable(Of TimeZoneInfo), ISerializable
继承
TimeZoneInfo
属性
实现

注解

时区指使用相同时间的某个地理区域。

TimeZoneInfo 比 类提供显著增强 TimeZone ,类仅提供有限的功能。

TimeZone 仅识别本地时区,并且可以在协调世界时 (UTC) 和本地时间之间转换时间。 TimeZoneInfo对象可以表示任何时区,类的方法TimeZoneInfo可用于将一个时区中的时间转换为任何其他时区中的相应时间。 类的成员 TimeZoneInfo 支持以下操作:

  • 检索操作系统已定义的时区。

  • 枚举系统上可用的时区。

  • 在不同时区之间转换时间。

  • 创建操作系统尚未定义的新时区。

  • 序列化时区以供以后检索。

注意

类的实例是不可变的 TimeZoneInfo 。 对象实例化后,无法修改其值。

不能使用 new 关键字 (keyword) 实例化TimeZoneInfo对象。 相反,必须调用下表所示的 TimeZoneInfo 类的静态成员之一。

静态成员名称 说明
CreateCustomTimeZone 方法 根据应用程序提供的数据创建自定义时区。
FindSystemTimeZoneById 方法 根据时区标识符实例化时区。
FromSerializedString 方法 反序列化字符串值以重新创建以前序列化 TimeZoneInfo 的对象。
GetSystemTimeZones 方法 返回对象的可ReadOnlyCollection<T>TimeZoneInfo枚举值,该对象代表本地系统上可用的所有时区。
Local 属性 实例化表示 TimeZoneInfo 本地时区的 对象。
Utc 属性 实例化表示 TimeZoneInfo UTC 区域的 对象。

可以使用 CreateCustomTimeZone 方法创建一个时区,该时区不是在 Windows 系统上的本地系统注册表中定义的,也不是由 Linux 或 macOS 上的 ICU 库的时区数据 定义的。 然后, ToSerializedString 可以使用 属性将时区对象的信息保存为字符串,该字符串可以以某种可供应用程序访问的形式存储。 可以使用 FromSerializedString 方法将序列化的字符串转换回 TimeZoneInfo 对象。

属性

BaseUtcOffset

获取当前时区的标准时间与协调世界时 (UTC) 之间的时差。

DaylightName

获取当前时区的夏令时的显示名称。

DisplayName

获取表示时区的一般显示名称。

HasIanaId

true如果此 TimeZoneInfo 对象具有 IANA ID,则返回 。

Id

获取时区标识符。

Local

获取表示本地时区的 TimeZoneInfo 对象。

StandardName

获取时区的标准时间的显示名称。

SupportsDaylightSavingTime

获取一个值,该值指示时区是否具有任何夏令制规则。

Utc

获取表示协调世界时 (UTC) 区域的 TimeZoneInfo 对象。

方法

ClearCachedData()

清除已缓存的时区数据。

ConvertTime(DateTime, TimeZoneInfo)

将时间转换为特定时区的时间。

ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)

将时间从一个时区转换到另一个时区。

ConvertTime(DateTimeOffset, TimeZoneInfo)

将时间转换为特定时区的时间。

ConvertTimeBySystemTimeZoneId(DateTime, String)

根据时区标识符将时间转换为另一时区中的时间。

ConvertTimeBySystemTimeZoneId(DateTime, String, String)

根据时区标识符将时间从一个时区转换到另一个时区。

ConvertTimeBySystemTimeZoneId(DateTimeOffset, String)

根据时区标识符将时间转换为另一时区中的时间。

ConvertTimeFromUtc(DateTime, TimeZoneInfo)

将协调世界时 (UTC) 转换为指定时区中的时间。

ConvertTimeToUtc(DateTime)

将指定的日期和时间转换为协调世界时 (UTC)。

ConvertTimeToUtc(DateTime, TimeZoneInfo)

将指定时区中的时间转换为协调世界时 (UTC)。

CreateCustomTimeZone(String, TimeSpan, String, String)

创建带指定标识符的自定义时区、与协调世界时 (UTC) 的偏移量、显示名称以及标准时间显示名称。

CreateCustomTimeZone(String, TimeSpan, String, String, String, TimeZoneInfo+AdjustmentRule[])

创建带指定标识符的自定义时区、与协调世界时 (UTC) 的偏移量、显示名称、标准时间名称、夏时制名称和夏时制规则。

CreateCustomTimeZone(String, TimeSpan, String, String, String, TimeZoneInfo+AdjustmentRule[], Boolean)

创建带指定标识符的自定义时区、与协调世界时 (UTC) 的偏移量、显示名称、标准时间名称、夏令制名称、夏令制规则以及指示返回的对象是否反映夏令制信息的值。

Equals(Object)

确定当前的 TimeZoneInfo 对象和另一个对象是否相等。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
Equals(TimeZoneInfo)

确定当前的 TimeZoneInfo 对象和另一个 TimeZoneInfo 对象是否相等。

FindSystemTimeZoneById(String)

TimeZoneInfo根据对象的标识符返回对象。

FromSerializedString(String)

反序列化一个字符串,以重新创建原始的已序列化的 TimeZoneInfo 对象。

GetAdjustmentRules()

检索应用至当前 TimeZoneInfo 对象的 TimeZoneInfo.AdjustmentRule 对象的数组。

GetAmbiguousTimeOffsets(DateTime)

返回不明确的日期和时间可能映射到的日期和时间的相关信息。

GetAmbiguousTimeOffsets(DateTimeOffset)

返回不明确的日期和时间可能映射到的日期和时间的相关信息。

GetHashCode()

用作哈希算法的哈希函数和数据结构(如哈希表)。

GetSystemTimeZones()

返回时区信息在本地系统上可用的所有时区的已排序集合。

GetSystemTimeZones(Boolean)

返回一个 , ReadOnlyCollection<T> 其中包含来自本地计算机的所有有效 TimeZone。 此方法 不会 引发 TimeZoneNotFoundException 或 InvalidTimeZoneException。

GetType()

获取当前实例的 Type

(继承自 Object)
GetUtcOffset(DateTime)

计算此时区中的时间与协调世界时 (UTC) 之间针对特定日期和时间的偏移量或差值。

GetUtcOffset(DateTimeOffset)

计算此时区中的时间与协调世界时 (UTC) 之间针对特定日期和时间的偏移量或差值。

HasSameRules(TimeZoneInfo)

指示当前对象和另一个 TimeZoneInfo 对象是否具有相同的调整规则。

IsAmbiguousTime(DateTime)

确定特定时区中的特定日期和时间是否不明确以及是否可以映射至两个或多个协调世界时 (UTC) 时间。

IsAmbiguousTime(DateTimeOffset)

确定特定时区中的特定日期和时间是否不明确以及是否可以映射至两个或多个协调世界时 (UTC) 时间。

IsDaylightSavingTime(DateTime)

指示指定的日期和时间是否处于当前 TimeZoneInfo 对象时区的夏令制范围内。

IsDaylightSavingTime(DateTimeOffset)

指示指定的日期和时间是否处于当前 TimeZoneInfo 对象时区的夏令制范围内。

IsInvalidTime(DateTime)

指示特定日期和时间是否无效。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToSerializedString()

将当前的 TimeZoneInfo 对象转换为序列化字符串。

ToString()

返回当前 TimeZoneInfo 对象的显示名称。

TryConvertIanaIdToWindowsId(String, String)

尝试将 IANA 时区 ID 转换为 Windows ID。

TryConvertWindowsIdToIanaId(String, String)

尝试将 Windows 时区 ID 转换为 IANA ID。

TryConvertWindowsIdToIanaId(String, String, String)

尝试将 Windows 时区 ID 转换为 IANA ID。

TryFindSystemTimeZoneById(String, TimeZoneInfo)

TimeZoneInfo按时区名称检索 对象。

显式接口实现

IDeserializationCallback.OnDeserialization(Object)

在对象的反序列化完成时运行。

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

使用序列化当前的 SerializationInfo 对象所需的所有数据填充 TimeZoneInfo 对象。

适用于