精确的DateTime字符串格式
本文关键字:字符串 格式 DateTime | 更新日期: 2023-09-27 18:29:09
我有一个DateTime
变量,它包含以下值:5/11/2014 7:56:26 am
我目前正在使用以下代码将其格式化为字符串:uDate.ToString("s")
。使用此代码,我得到以下值:2014-11-05T07:56:26
我需要这个更加准确。我想要得到的准确值在以下精度范围内:2014-11-05T07:56:26.4
我在以下链接上做了一些研究:http://www.w3.org/TR/NOTE-datetime
以下是我的发现:
此配置文件没有指定可以使用多少数字来表示一秒钟的小数。允许采用的标准秒的小数必须同时指定最小位数(大于或等于1的数字)和数字(最大值可以表示为"无限制")。
我想要获得的值是在web服务请求中显示DateTime
变量时在Azure
上使用的值。
如何格式化自己的DateTime
字符串,使其与Azure
上使用的格式相同?Azure
是否使用特定格式?
基本上,我如何将DateTime
字符串格式化为比代码更准确:uDate.ToString("s")
提前谢谢。
我相信最"完整"的信息是使用"O"值,包括分数和时区(如果可用)。
var myDate = DateTime.Now.ToString("o");
另请参阅本文。微软表示"符合ISO 8601",每个.Net平台(也包括Azure)都可以将此字符串读取为DateTime,并在可用时正确设置"DateTimeKind"。
"s"
标准格式说明符使用CurrentCulture
的SortableDateTimePattern
属性,并且不包括毫秒部分。
无论使用何种区域性,此格式说明符始终相同,并且是"yyyy'-'MM'-'dd'T'HH':'mm':'ss"
格式。
您可以使用自定义日期和时间格式字符串,如;
uDate.ToString("yyyy-MM-dd'T'HH:mm:ss.f");