Csharp/C#教程:DateTime将日期显示为01/01/0001分享


DateTime将日期显示为01/01/0001

对不起,如果这似乎是一个愚蠢的问题,但我无法在任何地方找到答案,我有点新手。 DateTime显示为我推测的最小日期。 例如:

DateTime updatedDate = new DateTime(); outItem.AddDate = updatedDate.ToLongDateString(); 

输出到0001年1月1日。我尝试了许多变化,但结果相似。 我究竟做错了什么?

这取决于你所说的“错误”。 new DateTime()确实具有与DateTime.MinValue相同的值。 如果你想要当前时间,你应该使用:

 DateTime updatedDate = DateTime.Now; 

要么

 DateTime updatedDate = DateTime.UtcNow; 

(第一个给你当地时间 ,第二个给你通用时间。当涉及到本地/普遍鸿沟时, DateTime 有些混乱 。)

如果您想获取当前日期,请使用DateTime.Now 。 您正在创建日期类的新实例,最小值是其默认值。

 DateTime updatedDate = DateTime.Now; outItem.AddDate = updatedDate.ToLongDateString(); 

编辑:实际上,您只需执行以下操作即可缩短代码:

 outItem.AddDate = DateTime.Now.ToLongDateString(); 

Jon Skeet说的正确,我还有一些要补充。

“错误”取决于你想要的时间。

DateTime是一个struct ,是struct的默认构造函数

始终将所有字段初始化为数字类型的零并且为null

作为参考类型。

因此,如果要获取当前的本地日期和时间,可以调用静态属性DateTime.Now。

  var curDateTime = DateTime.Now; 

如果你想获得UTC时间。

  var utcDateTime = DateTime.UtcNow; 

注意:DateTime.UtcNow获取当前日期和时间,但它不使用本地时区,而是使用UTC时间。

您可以参考以下链接。

https://blackrabbitcoder.net/archive/2010/11/18/c.net-little-wonders-datetime-is-packed-with-goodies.aspx

上述就是C#学习教程:DateTime将日期显示为01/01/0001分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/949855.html

(0)
上一篇 2021年11月18日
下一篇 2021年11月18日

精彩推荐