DateTime 结构
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示某个时刻,通常以日期和当天的时间表示。
Javascript 此类型显示为 Date 对象。
。网 使用 .NET 编程时,此类型是隐藏的,开发人员应使用 System.DateTimeOffset 结构。
C++/CX 类似于 FILETIME ,但存在重要差异。 请参阅“备注”。
C++/WinRT 此类型是 std::chrono::time_point 的专用化。 请参阅“备注”。
public value class DateTime
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
struct time_point
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
public struct DateTimeOffset
var dateTime = {
universalTime : /* Your value */
}
Public Structure DateTimeOffset
- 继承
-
DateTime
- 属性
Windows 要求
设备系列 |
Windows 10 (在 10.0.10240.0 中引入)
|
API contract |
Windows.Foundation.FoundationContract (在 v1.0 中引入)
|
注解
JavaScript 和 Microsoft .NET 语言不直接使用此类型。 在 JavaScript 中,DateTime 投影为 Date 对象,在 Microsoft .NET 中,它投影为 System.DateTimeOffset。 每种语言以透明方式处理相应语言的粒度和日期范围的转换。
在 Visual C++ 组件扩展 (C++/CX) 中, DateTime.UniversalTime 值具有与 FILETIME 相同的粒度, (100 纳秒的间隔) 。 对于正值, DateTime.UniversalTime 值与 FILETIME 值相同,尽管它最多只能表示大约 29000 C.E 的日期。负值表示 1601 年 1 月 1 日之前的间隔数,可以表示可追溯到大约 27,400 个前的日期。对于公历,可以使用 DateTimeFormatter 为第 1 年午夜之后的日期创建 DateTime 的字符串表示形式。
若要将 UniversalTime 转换为 SYSTEMTIME,请使用 ULARGE_INTEGER 将 int64 值转换为 FILETIME,然后使用 FileTimeToSystemTime 获取 SYSTEMTIME。
在 C++/WinRT 中, DateTime 类似于 C++/CX,因为它的粒度与 FILETIME 相同。 与 C++/CX 不同,它是 std::chrono::time_point 的专用化,而不是不同的结构。 C++/WinRT 提供了帮助程序函数,用于将 DateTime 与 FILETIME 和 time_t 转换到 和转换。 有关这些函数的详细信息,请参阅 winrt::clock 结构。
字段
UniversalTime |
一个 64 位有符号整数,表示时间点作为 1601 年 1 月 1 日午夜之前或之后的 100 纳秒间隔数, (根据公历) 。 注意 在 C++/WinRT 中,此字段不存在,因为在该语言中 ,DateTime 是 std::chrono::time_point 的专用化。 如果需要原始整数值,请使用 time_point::time_since_epoch 获取 std::chrono::d uration,并使用其 count 方法获取原始计数。 |