【问题标题】:How to remove time portion of date in C# in DateTime object only [closed]如何仅在 DateTime 对象中删除 C# 中日期的时间部分[关闭]
【发布时间】:2014-12-19 15:49:00
【问题描述】:

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

06/26/2014 00:00:00:000

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

我首先尝试将日期转换为字符串,然后从中删除特定时间的日期,但是一旦我再次将其转换回 DateTime 对象,它就会添加 12:00:00 AM。

【问题讨论】:

  • 对不起,读错了。你说06/26/2014 00:00:00:000也行?太好了,因为12:00:00 AM 的时间就是这样。正如所有答案所示,不需要字符串操作。

标签: c# .net datetime


【解决方案1】:

您不能创建没有时间的 DateTime 对象。它总是有一些时间。

如果你想在没有时间部分的情况下输出它,你可以使用format string 这样做:

date.ToString("MM/dd/yyyy");

Standard Date and Time Format Strings
Custom Date and Time Format Strings

正如其他人所说,您可以访问 date.Date 以获取省略任何特定时间信息的值,但时间仍为 00:00 AM。

【讨论】:

  • OP 想要一个DateTime“不是字符串形式”。我猜Adil's answer 就是他要找的东西。
  • @TimSchmelter 那么,除非他们想使用 .NET 核心之外的东西,否则 OP 很不走运。但这对我来说听起来像是 X-> Y 问题。问题是为什么他们想要这个。
  • 我猜 OP 很困惑,因为 DateTime 的末尾似乎有 12:00:00 AM,但这就是他在任何地方看到它的方式。由于他不想要字符串,因此他通过DateTime.Date 达到了目标。
  • @TimSchmelter 我想是的。除了 2 分钟后发布并且提供的参考资料更少之外,我看不出 Adil 的答案与我的有什么不同。
  • @TimSchmelter “正如其他人所说,您可以访问 date.Date 以获取省略任何特定时间信息的值,但时间仍为 00:00 AM。”
【解决方案2】:

您可以使用 DateTime 对象的Date 属性来获取仅日期。

DateTime dateOnly = date1.Date;

如果您想要 DateTime 对象中的日期字符串,则通过提供格式来使用 ToString 方法。您可以在此 MSDN article 中阅读有关自定义日期格式的更多信息。

string strDate =  date.ToString("MM/dd/yyyy");

【讨论】:

  • {07/09/15 12:00:00 AM}
【解决方案3】:
var dateAndTime = DateTime.Now;
var date = dateAndTime.Date;

日期变量将包含日期,时间部分将是 00:00:00。

【讨论】:

  • {07/09/15 12:00:00 AM}
【解决方案4】:

我需要删除日期时间的时间部分...

这是不可能的。您不能拥有没有时间信息的DateTime 实例。例如,您不能将 DateTime 实例仅作为 06/26/2014 或仅 00:00:00:000

如果您只想获取实例的日期部分,可以使用DateTime.Date property

获取此实例的日期组件。

但是,这个.Date 属性仍然将它的时间部分分配给午夜。

请记住,DateTime 没有 any 隐式格式。它只有日期和时间值。 格式 的概念仅适用于您希望将其显示为string

在表示部分,你必须使用字符串表示;

yourDateTime.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);

【讨论】:

  • 是否(yourDateTime.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);) 去掉时间部分?
  • @r.hamd 当您使用ToString 方法时,您会生成DateTime文本(又名字符串)表示。这意味着,它不再是 DateTime。这是一个string。当然,您可以通过生成它的字符串表示来获得 only 日期部分,但您不能拥有DateTime 实例没有时间部分。了解它们之间的区别真的很重要。
猜你喜欢
  • 2011-09-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-14
  • 1970-01-01
  • 1970-01-01
  • 2017-12-11
相关资源
最近更新 更多