C# DateTime.Parse 给出奇怪的输出
C# DateTime.Parse giving strange output
我有一些来自 FR 的同事的单元测试代码失败了。我怀疑这个问题与某些日期时间格式有关,但我不确定来源是什么。我有一个变量 dt
没有按照我认为应该的方式进行解析。下面是我的即时 Window
的一些输出
dt
"2016-12-14T00:00:00Z"
DateTime.Parse(dt, CultureInfo.InvariantCulture)
{12/13/2016 7:00:00 PM}
Date: {12/13/2016 12:00:00 AM}
Day: 13
DayOfWeek: Tuesday
DayOfYear: 348
Hour: 19
Kind: Local
Millisecond: 0
Minute: 0
Month: 12
Second: 0
Ticks: 636172524000000000
TimeOfDay: {19:00:00}
Year: 2016
dt
具有我认为应该的值,看起来是 2016 年 12 月 14 日午夜。但是当我解析它时,我得到了 12 月 13 日晚上 7 点。我觉得很困惑。
根据this page
当"Z"(祖鲁语)被追加在一个时间的末尾时,表示该时间为UTC。
- 使用DateTimeOffset.Parse(字符串).UtcDateTime.
我有一些来自 FR 的同事的单元测试代码失败了。我怀疑这个问题与某些日期时间格式有关,但我不确定来源是什么。我有一个变量 dt
没有按照我认为应该的方式进行解析。下面是我的即时 Window
dt
"2016-12-14T00:00:00Z"
DateTime.Parse(dt, CultureInfo.InvariantCulture)
{12/13/2016 7:00:00 PM}
Date: {12/13/2016 12:00:00 AM}
Day: 13
DayOfWeek: Tuesday
DayOfYear: 348
Hour: 19
Kind: Local
Millisecond: 0
Minute: 0
Month: 12
Second: 0
Ticks: 636172524000000000
TimeOfDay: {19:00:00}
Year: 2016
dt
具有我认为应该的值,看起来是 2016 年 12 月 14 日午夜。但是当我解析它时,我得到了 12 月 13 日晚上 7 点。我觉得很困惑。
根据this page
当"Z"(祖鲁语)被追加在一个时间的末尾时,表示该时间为UTC。
- 使用DateTimeOffset.Parse(字符串).UtcDateTime.