【发布时间】:2013-09-22 06:22:11
【问题描述】:
为什么在 C# 中将像 17/09/2013 00:00:00 这样的日期转换为简单的 2013/09/17 并将其保留为 DateTime 对象如此困难???
我不敢相信……
给定一个像 17/09/2013 00:00:00 这样的字符串,这就是我试图得到它并保持它的日期时间:
DateTime x = DateTime.Parse(String.Format(element.data, "yyyy-MM-dd")).Date;
什么都没有,它不断添加那些 00:00:00
DateTime x = DateTime.Parse(String.Format(element.data, "dd/MM/yyyy").Replace("/", "-")).Date;
什么都没有。
我尝试了其他十几个技巧和东西,但我没有成功......
MSDN 及其论坛上的所有示例都使用了字符串操作,我不希望这样做,因为我需要通过日期时间将日期传递给 Web 服务。
如何将 dd/MM/yyyy hh:mm:ss 格式的日期时间转换为仅 yyyy-MM-dd 保持日期时间?
谢谢大家
【问题讨论】:
-
类型称为日期时间。它总是有时间。您可以将其转换为没有时间的字符串。
-
你如何将它传递给网络服务?
-
您将在调试器中看到的内容(表示日期/时间的字符串)与对象的值混淆了。你不需要投射任何东西,你可以按原样传递。
-
DateTime包含Date和Time,当您仅提取Date时,Time部分将被截断。问题是你必须使用一些日期时间格式来显示DateTime,它没有任何集成格式,它只是data structure。 -
如果你想要日期的字符串表示,只需使用
x.ToString("dd-MM-yyyy");
标签: c# datetime time format converter