2010-05-25 52 views
13

我想转换:如何将毫秒内的日期时间转换为C#中的字符串?

5/25/2010 12:54:56:000 

到:

05252010125456000 

我该怎么做,在C#?

+0

这仅仅是一个长的数字吧?你可以使用long.ToString();? – vodkhang 2010-05-25 16:27:28

+2

我不禁想起这是一个坏主意。你会用这个字符串做什么?如果你打算把它存储在某个地方的数据库中(甚至是一个平面文件),那么你就错了。 – 2010-05-25 16:30:40

+0

Hrm,没有“youre-doing-it-it-wrong”标签 – 2010-05-25 16:39:45

回答

29

可以使用custom format string。例如:

string formatted = DateTime.Now.ToString("MMddyyyyHHmmssfff"); 
+0

这不会让他的总毫秒数。只是价值的毫秒派。 – 2010-05-25 16:32:28

+0

为什么downvote?如果你不解释你认为什么是错的,它不能改善答案。 – Guffa 2013-11-28 19:55:38

0

要获得总毫秒只作为字符串中使用这样的:

TimeSpan value = (DateTime.Now - DateTime.MinValue); 
string milliseconds = value.TotalMilliseconds.ToString(); 

如果你想存储和/或比较的日期时间值,那么我建议你使用.Ticks属性作为一个字符串的DateTime,因为你可以重建一个DateTime值作为构造函数参数传递ticks。

+2

我认为你误解了这个问题。 OP询问日期,时间和毫秒。注意示例中包含日期,时间和毫秒组件:05252010125456000 = 05/25/2010 12:54:56.000。 – Guffa 2010-05-25 16:36:11

+0

可能是因为我是德国人。当他们不以日/月/年开始时,我无法识别日期;-) – 2010-05-26 05:01:24

相关问题