代码改变世界

C# DateTime.parse 读取日期的bug

2021-09-09 14:33  ZealouSnesS  阅读(2175)  评论(0编辑  收藏  举报

C# 用 DateTime.parse 读取日期有个问题,就是读取进来后会自动将日期的timezone 转为机器本地 timezone。

比如 utc-7 时区(美西)的一台机器读取

2021-08-25T00:03Z

这个字符串。得到的是 

2021-08-24T17:03-07:00

这样的结果。

并且 DateTime.Parse()不支持指定时区读取,默认只能转到本地时区

解决方案,读取后转回原时区

DateTime.Parse().ToUniversalTime()

转回0时区