DateTime.TryParseExact with "U" and DateTimeStyles
本文关键字:quot and DateTimeStyles TryParseExact DateTime with | 更新日期: 2023-09-27 18:10:07
日期/时间字符串应该如何格式化,以便DateTime.TryParseExact
使用"U"格式字符串和DateTimeStyles.AdjustToUniversal
解析它?换句话说,什么是有效的timestampString
,以便isDateTime
在下面的代码中被设置为true
?
string timestampString = "...";
DateTime timestamp;
bool isDateTime = DateTime.TryParseExact(
timestampString, "U", null, DateTimeStyles.AdjustToUniversal, out timestamp);
这里有一个美国文化的例子:
string timestampString = "Saturday, April 20, 2013 9:00:00 PM";
DateTime timestamp;
bool isDateTime = DateTime.TryParseExact(timestampString, "U", null,
DateTimeStyles.AdjustToUniversal, out timestamp);
Console.WriteLine(isDateTime); // True
Console.WriteLine(timestamp); // 4/20/2013 9:00:00 PM
Console.WriteLine(timestamp.Kind); // Utc
在MSDN库的标准日期和时间格式字符串主题下记录,"U"表示由DateTimeFormatInfo定义的格式。FullDateTimePattern属性,并自动转换为UTC。对于en-US,此格式为"dddd, MMMM d, yyyy h:mm:ss tt"
。
From this MSDN post:
adjusttuniversal 解析由input和if表示的字符串必要时,将其转换为UTC。它相当于解析字符串然后调用DateTimeOffset。方法的tuniveraltime方法返回DateTimeOffset对象。
所以,先试着解析你的日期。
我不确定格式"U"是有效的日期时间。例如,我没有在MSDN日期时间格式页面