Я форматирую DateTime для использования в XML и использую форматировщик ISO 8601 «o». Я заметил, что это дает результаты, такие как:Форматирование Millisecond в .Net DateTime
2015-10-21T05:06:25.3800000-05:00
Похожие выход из другого программного обеспечения, кажется, включает только 3 места для части миллисекунды, например, это:
2015-10-21T05:06:25.380-05:00
Помимо занимая немного больше места в файле, есть ли проблема с наличием лишних нулей? Есть ли какой-то вариант для форматирования с более короткой версией в .Net без создания пользовательского форматирования? Я предпочитаю использовать опцию формата «o», так что это не проблема, совместима она или нет.
Учитывая, что миллисекунда - это 3 цифры, зачем вам нужно больше? –
@ChuckSavage, я уверен, что OP предпочтет только три, но рассматривает вопрос о том, стоит ли заменять простой спецификатор формата «o» для формата с нуля. – chris
Согласно [Википедии] (https://en.wikipedia.org/wiki/ISO_8601#Times), «Нет предела числу десятичных знаков для десятичной дроби». Поэтому вопрос заключается в том, может ли программное обеспечение, с которым вы общаетесь, понять формат. Если нет, вы должны написать строку пользовательского формата (.NET «o» равно «yyyy» - «MM» - «dd'T'HH»: 'mm': 'ss'. 'FffffffK "') – vesan