我需要删除日期时间的时间部分,或者可能有以下格式的日期在对象形式,而不是在字符串形式。

06/26/2009 00:00:00:000

我不能使用任何字符串转换方法,因为我需要对象形式的日期。

我尝试先将DateTime转换为字符串,从它中删除特定的时间日期,但它添加了12:00:00 AM,只要我将它转换回DateTime对象。


当前回答

DateTime dd=DateTiem.Now;
string date=dd.toString("dd/MM/YYYY");

其他回答

这适用于c# 10及以上版本,现在只有DateOnly和TimeOnly格式可用。使用下面的格式,您可以从DateTime格式中提取DateOnly。

DateOnly myDateNoTime = DateOnly.FromDateTime(DateTime.Now);

我很惊讶居然没人提到DateTime。今天

var date = DateTime.Today;
// {7/1/2014 12:00:00 AM}

看到MSDN

你不能。. net中的DateTime总是有一个时间,默认为00:00:00:000。DateTime的Date属性也是DateTime(!),因此时间默认为00:00:00:000。

这是. net框架的不足之处,可以认为。net中的DateTime违反了单一责任原则。

供数据主义者、重复者使用。在aspx页面中:<%# Eval("YourDateString").ToString().删除(10)%>

下面是另一个使用String的方法。格式

    DateTime todaysDate = DateTime.UtcNow;

    string dateString = String.Format("{0:dd/MM/yyyy}", todaysDate);

    Console.WriteLine("Date with Time: "+ todaysDate.ToString());

    Console.WriteLine("Date Only : " + dateString);

输出:

Date with Time: 9/4/2016 11:42:16 AM

Date Only : 04/09/2016

如果日期时间存储在数据库中,这也适用。

有关更多日期和时间格式,请检查这些链接:

参考1

参考2

希望有帮助。