我需要删除日期时间的时间部分,或者可能有以下格式的日期在对象形式,而不是在字符串形式。
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对象。
当前回答
试试这个,如果你使用DateTimeOffset,它也会照顾时区
date1 = date1.LocalDateTime.Date;
如果你需要增加工作时间,可以这样做:
date1 = date1.LocalDateTime.Date;
date1 = date1.AddHours(23).AddMinutes(59).AddSeconds(59);
其他回答
这种方法只得到日期而没有时间
DateTime date = DateTime.Now;
string Strdateonly = date.ToString("d");
输出= 5/16/2015
试试这个,如果你使用DateTimeOffset,它也会照顾时区
date1 = date1.LocalDateTime.Date;
如果你需要增加工作时间,可以这样做:
date1 = date1.LocalDateTime.Date;
date1 = date1.AddHours(23).AddMinutes(59).AddSeconds(59);
我认为你会这样:DateTime onlyDate = DateTime. today . date; 或者,这是相同的DateTime onlyDate = yourDateTime.Date; 所以使用属性Date。
如果你想从DateTime中删除部分时间,尝试使用下面的代码:
DateTime dt = new DateTime();
dt = DateTime.Now; //ex: 31/1/2017 6:30:20 PM
TimeSpan remainingTime = new TimeSpan(0, dt.Hour - 5, dt.Minute - 29, dt.Second - 19);
dt=dt.Add(remainingTime);
label1.Text = dt.ToString("HH:mm:ss"); // must be HH not hh
输出:01:01:01
您可以使用下面的简单代码。
代码:DateTime.Now.ToShortDateString ();
前任。 Console.WriteLine(DateTime.Now.ToShortDateString());