我需要删除日期时间的时间部分,或者可能有以下格式的日期在对象形式,而不是在字符串形式。
06/26/2009 00:00:00:000
我不能使用任何字符串转换方法,因为我需要对象形式的日期。
我尝试先将DateTime转换为字符串,从它中删除特定的时间日期,但它添加了12:00:00 AM,只要我将它转换回DateTime对象。
我需要删除日期时间的时间部分,或者可能有以下格式的日期在对象形式,而不是在字符串形式。
06/26/2009 00:00:00:000
我不能使用任何字符串转换方法,因为我需要对象形式的日期。
我尝试先将DateTime转换为字符串,从它中删除特定的时间日期,但它添加了12:00:00 AM,只要我将它转换回DateTime对象。
当前回答
下面是另一个使用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
希望有帮助。
其他回答
DateTime。日期
var newDate = DateTime.Now; //newDate.Date property is date portion of DateTime
使用Date属性:
var dateAndTime = DateTime.Now;
var date = dateAndTime.Date;
date变量将包含日期,时间部分将是00:00:00。
使用DateTime对象的. date将忽略时间部分。
下面是代码:
DateTime dateA = DateTime.Now;
DateTime dateB = DateTime.Now.AddHours(1).AddMinutes(10).AddSeconds(14);
Console.WriteLine("Date A: {0}",dateA.ToString("o"));
Console.WriteLine("Date B: {0}", dateB.ToString("o"));
Console.WriteLine(String.Format("Comparing objects A==B? {0}", dateA.Equals(dateB)));
Console.WriteLine(String.Format("Comparing ONLY Date property A==B? {0}", dateA.Date.Equals(dateB.Date)));
Console.ReadLine();
输出:
>Date A: 2014-09-04T07:53:14.6404013+02:00
>Date B: 2014-09-04T09:03:28.6414014+02:00
>Comparing objects A==B? False
>Comparing ONLY Date property A==B? True
如果您要将其转换为字符串,您可以轻松地像这样做。
我将date作为DateTime对象。
date.ToString("d");
这只会给你日期。
这可以简单地这样做:
var dateOnly = new DateTime(dateTime.Year, dateTime.Month, dateTime.Day)