我正在尝试从 DateTime 对象创建一个字符串,它产生格式 mm:dd:yyyy
。
通常 DateTime
对象以 mm:dd:yyyy hrs:min:sec AM/PM
的形式出现。
有没有办法快速删除 DateTime 的 hrs:min:sec AM/PM
部分,这样当我将它转换为 ToString()
时,它只会导致在 mm:dd:yyyy
?
最佳答案
要回答您的问题,不 - 您必须将其存储在不同的类型中。最简单的选择是使用字符串。
string date = dateTime.ToString("MM:dd:yyyy");
不过,我也强烈建议不要在程序内部将日期作为字符串存储。这将使对它们进行任何计算或比较变得困难。此外,我建议您不要为您的日期表示强制使用特定的文化,因为这意味着您的应用程序可能无法在您所在的其他文化中按预期工作。
一种稍微复杂的方法是创建一个覆盖 ToString 的自定义类。不过,我也会避免这种情况,因为仍然很难将您的类型与标准库函数一起使用。您将不得不一直来回转换。
只需将其保留为 DateTime 并仅在表示层中转换为字符串。您可以使用 DateTime.ToShortDateString
打印用户友好的文化感知字符串。
关于c# - 删除小时数 :seconds:milliseconds in DateTime object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4415824/