【问题标题】:DateTime.Date get me Date and 12:00 AMDateTime.Date 告诉我日期和 12:00 AM
【发布时间】:2014-08-26 19:55:22
【问题描述】:

我已经看过this

我将仅从 DateTime 变量中获取日期,并以这种方式使用以下代码:

DateTime Start = GetaDateTime();
String Day = Start.ToString("yyyy/MM/dd");
DateTime d = Convert.ToDateTime(Day);

但是当我使用d.Date 时,它给了我'2014-08-23 12:00 AM'

其实我不应该再得到12:00AM了????

【问题讨论】:

  • Date 返回一个DateTime。它有 12:00AM,因为这是时间部分的默认值。 c#中没有内置的Date数据类型。

标签: c# datetime


【解决方案1】:

其实我不应该再到凌晨 12:00 了吗????

为什么不呢? DateTime 不知道它是日期还是日期和时间,还是任何类型的字符串格式。这只是一个时间点(甚至不完全是,考虑到奇怪的Kind 部分)。

请注意,获取与另一个相同但在午夜的DateTime 的更简单方法是使用Date 开头:

DateTime start = Foo();
DateTime date = start.Date;

无需格式化再解析。

没有.NET 类型代表只是一个日期。为此,您需要像我的 Noda Time 项目这样的东西,它有一组相当丰富的日期/时间类型可供使用。

【讨论】:

    猜你喜欢
    • 2012-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-01
    • 1970-01-01
    相关资源
    最近更新 更多