c# - 删除小时数 :seconds:milliseconds in DateTime object

标签 c# .net asp.net datetime datetime-format

我正在尝试从 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/

相关文章:

c# - 带复数词的阿拉伯语 WordNet

C# 正则表达式匹配字符串中的多个单词

c# - 如何在三个类中处理事件

c# - 如何通过主机中的软件中止已建立的连接的消息找到 SocketException 的原因和原因?

c# - 我可以使用 XmlSerializer 控制某些字段的序列化吗

asp.net - jQuery Ajax 到 asp.net asmx Web 服务抛出请求格式无效 : application/json

c# - 更新到 2.5.5.2700 后 RavenDB DateTime 错误

asp.net - mvc session 变量丢失

c# - 如何使用 sqlserver 中的 C# 在 xaml 中绑定(bind)数据

.net - ToString() 是否被编译器优化?