# Returns a FILETIME timestamp representing the current UTC timestamp,
# i.e. a [long] value that is the number of 100-nanosecond intervals
# since midnight 1 Jan 1601, UTC.
[datetime]::UtcNow.ToFileTime()
备选方案:[dateime]::Now.ToFileTimeUtc() 或 [datetimeoffset]::Now.ToFileTime()
要将这样的FILETIME 值转换回[datetime] 实例:
# Creates a [datetime] instance expressed as a *local* timestamp.
[datetime]::FromFileTime(
[datetime]::UtcNow.ToFileTime()
)
注意:以上产生了一个本地 [datetime] 实例(其.Kind 属性为Local)。附加.ToUniversalTime() 以获取UTC 实例(其中.Kind 是Utc)。
或者,使用[datetime]::FromFileTimeUtc()(注意Utc 后缀),它直接产生一个UTC [datetime] 实例:
# Creates a [datetime] instance expressed as a *UTC* timestamp.
[datetime]::FromFileTimeUtc(
[datetime]::UtcNow.ToFileTime()
)
或者,使用[datetimeoffset]::FromFileTime() 获取明确的时间戳,可以按原样使用,也可以根据需要转换为本地 (.LocalDateTime) 或 UTC (.UtcDateTime) [datetime] 实例。
# A [datetimeoffset] instance unambiguously represents a point in time.
# Use its .LocalDataTime / .UtcDateTime properties to get
# local / UTC [datetime] instances.
[datetimeoffset]::FromFileTime(
[datetime]::Now.ToFileTimeUtc()
)