【发布时间】:2011-03-23 16:49:33
【问题描述】:
datetimeoffset 中的默认 toString() 方法将时间转换为字符串格式,但会丢失毫秒。有没有办法保存?
【问题讨论】:
标签: c# datetime datetimeoffset
datetimeoffset 中的默认 toString() 方法将时间转换为字符串格式,但会丢失毫秒。有没有办法保存?
【问题讨论】:
标签: c# datetime datetimeoffset
ToString() 采用格式参数。现有的字符串格式代码将打印毫秒 - 看看list here。
例如,格式代码“o”将打印一个以毫秒为单位的完整时间字符串,或者您可以创建自己的格式字符串以满足您的需求并使用“ffff”说明符在适当的地方添加毫秒。
myDateTime.ToString("o")
【讨论】:
你必须使用字符串格式的“ffff”来获取毫秒,比如:
DateTime date = DateTime.Now;
string strDate = String.Format("{0:dd.MM.yyyy hh:mm.ss:ffff}", date);
米加
【讨论】:
根据DateTimeOffset 的documentation,这在很大程度上类似于DateTime 类的ToString。这意味着您可以使用标准格式字符串o 来显示毫秒数,或者您可以使用任何您想要的custom format pattern。
所以你可以这样做:
Console.WriteLine(dto.ToString("o"));
【讨论】:
您可以在格式字符串中使用 f 字符。
DateTimeOffset.Now.ToString("ddMMyyy-HH:mm:ss")
给出“23032011-16:58:36”
DateTimeOffset.Now.ToString("ddMMyyy:HHmmssffff")
给出“23032011-16:59:088562”
【讨论】: