开发者

C# convert datetimeoffset to string with milliseconds

The default toString() method in datetimeoffset converts the time into string format but loses the milliseconds. Is there anyway 开发者_StackOverflow中文版to preserve it?


ToString() takes a format argument. There are existing string format codes that will print milliseconds - take a look at the list here.

For example the format code "o" will print a full time string with milliseconds, or you can create your own format string to match your needs and use the "ffff" specifier to add milliseconds where appropriate.

myDateTime.ToString("o")


You have to use "ffff" in the string format to get miliseconds, like:

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

Mitja


You can do this using the f character in your format string.

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

Gives "23032011-16:58:36"

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

Gives "23032011-16:59:088562"


According to the documentation of DateTimeOffset this behaves in most ways similar to ToString of the DateTime class. This means that you can for example use the standard format string o which shows the milliseconds, or you can use whatever custom format pattern you want.

So you can do this:

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

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜