我从 API 读取的日期格式如下:
2010-03-15T00:00:00-04:00
在 C#/VB.net 中分配给日期数据类型时,它显示为:
3/14/2010 11:00:00 PM //Note 3/15 is being displayed as 3/14
为什么显示为前一天?上面的格式有名称吗?
最佳答案
您显示的日期在 UTC 中而当您进行转换时,它会针对本地时区调整 DateTime 实例。
您应该可以调用 ToUniversalTime method获取 UTC 格式的日期。
如果您需要输入本地时区文字形式的时间,则需要使用日期数据(年、月、日等)或通过一系列调用来创建一个新的 DateTime 实例SpecifyKind method指示 DateTime 实例是本地时区还是 UTC。
关于c# - 为什么 .net 在分配给日期字段时将此日期解释为前一天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2376759/