C#将datetimeoffset转换为字符串,以毫秒为单位

时间:2011-03-23 16:49:34

标签: c# datetime datetimeoffset

datetimeoffset中的默认toString()方法将时间转换为字符串格式,但会丢失毫秒数。反正有没有保留它?

4 个答案:

答案 0 :(得分:19)

ToString()采用格式参数。现有的字符串格式代码将打印毫秒 - 请查看list here

例如,格式代码“o”将打印一个包含毫秒的全时字符串,或者您可以创建自己的格式字符串以满足您的需要,并使用“ffff”说明符在适当的位置添加毫秒。

myDateTime.ToString("o")

答案 1 :(得分:6)

你必须在字符串格式中使用“ffff”来获得毫秒,例如:

DateTime date = DateTime.Now;
 string strDate = String.Format("{0:dd.MM.yyyy hh:mm.ss:ffff}", date);

米蒂亚

答案 2 :(得分:3)

根据DateTimeOffset的{​​{3}},这种行为在很多方面类似于documentation类的ToString。这意味着您可以使用显示毫秒的标准格式字符串o,或者您可以使用您想要的任何DateTime

所以你可以这样做:

Console.WriteLine(dto.ToString("o"));

答案 3 :(得分:2)

您可以使用格式字符串中的f字符执行此操作。

DateTimeOffset.Now.ToString("ddMMyyy-HH:mm:ss")

给出“23032011-16:58:36”

DateTimeOffset.Now.ToString("ddMMyyy:HHmmssffff")

给出“23032011-16:59:088562”