繁体   English   中英

DateTime.ParseExact 到 UTC 值

[英]DateTime.ParseExact to UTC value

我从我的 web api 检索日期和时间并将其设置为:

tmp = DateTime.ParseExact(dateAndTimeFromApi, "dd/MM/yyyy HH:mm:ss", null);

我需要将此 DateTime 转换为 UTC DateTime。 当我 add.ToUniversalTime() 它不会从本地转换为 UTC。 我当前的时区是 UTC + 2。所以我想在转换后从上午 11 点到上午 9 点。

如果我想保持“dd/MM/yyyy HH:mm:ss”格式,我该怎么做?

您应该添加几个 DateTimeStyles(在 System.Globalization 命名空间中)标志作为第四个参数。

默认情况下,生成的 DateTime 将具有Unsepcified DateTimeKind 因此本地和 UTC 之间的调整将失败。 - DateTimeStyles.AssumeLocal将确保 DateTimeKind.Local 已设置。

DateTimeStyles.AdjustToUniversal标志还将执行 DateTimeKind.Local 和 DateTimeKind.UTC 之间的转换

var tmp = DateTime.ParseExact("28/07/2022 10:51:25", "dd/MM/yyyy HH:mm:ss", null,
    DateTimeStyles.AssumeLocal | DateTimeStyles.AdjustToUniversal);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM