如何在 C# 中仅在日期时间对象中删除日期的时间部分
本文关键字:日期 删除 时间部 对象 时间 | 更新日期: 2023-09-27 18:34:38
我需要删除日期时间的时间部分,或者可能以对象形式而不是字符串形式具有以下格式的日期。
2014/06/26 00:00:00:000
我不能使用任何字符串转换方法,因为我需要对象形式的日期。
我尝试首先将日期转换为字符串,从中删除特定于时间的日期,但是一旦我再次将其转换为 DateTime 对象,它就会添加 12:00:00 AM。
不能创建没有时间的 DateTime 对象。它总是有一些时间。
如果要在没有时间部分的情况下输出它,可以使用格式字符串来执行此操作:
date.ToString("MM/dd/yyyy");
标准日期和时间格式字符串
自定义日期和时间格式字符串
正如其他人所说,您可以访问date.Date
以获取省略任何特定时间信息的值,但这仍将具有 00:00 AM 的时间。
可以使用 DateTime 对象的 Date 属性来获取仅一天。
DateTime dateOnly = date1.Date;
如果需要 DateTime 对象中的 Date 字符串,则通过提供格式来使用 ToString 方法。您可以在这篇 MSDN 文章中阅读有关自定义日期格式的详细信息。
string strDate = date.ToString("MM/dd/yyyy");
var dateAndTime = DateTime.Now;
var date = dateAndTime.Date;
日期变量将包含日期,时间部分将为
我需要删除日期时间的时间部分...
这是不可能的。如果没有时间信息,则无法拥有DateTime
实例。例如,您不能仅将DateTime
实例设置为06/26/2014
实例或仅00:00:00:000
实例。
如果您只想获取实例的日期部分,则可以使用DateTime.Date
属性。
获取此实例的日期部分。
但是,这个.Date
属性仍然将其时间部分分配给午夜。
请记住,DateTime
没有任何隐式格式。它只有日期和时间值。格式的概念仅适用于要将其显示为string
。
在表示部分中,必须使用字符串表示为;
yourDateTime.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);