我正在尝试解析类似于以下内容的国际日期时间字符串:
24-okt-08 21:09:06 CEST
到目前为止,我有类似的东西:
CultureInfo culture = CultureInfo.CreateSpecificCulture("nl-BE"); DateTime dt = DateTime.ParseExact("24-okt-08 21:09:06 CEST", "dd-MMM-yy HH:mm:ss ...", culture);
问题是格式字符串中的“ …”应使用什么?查看“ 自定义日期和时间格式字符串” MSDN页面似乎没有以PST / CEST / GMT / UTC格式列出用于解析时区的格式字符串。
AFAIK无法识别时区缩写。但是,如果用时区偏移量代替缩写,就可以了。例如:
DateTime dt1 = DateTime.ParseExact("24-okt-08 21:09:06 CEST".Replace("CEST", "+2"), "dd-MMM-yy HH:mm:ss z", culture); DateTime dt2 = DateTime.ParseExact("24-okt-08 21:09:06 CEST".Replace("CEST", "+02"), "dd-MMM-yy HH:mm:ss zz", culture); DateTime dt3 = DateTime.ParseExact("24-okt-08 21:09:06 CEST".Replace("CEST", "+02:00"), "dd-MMM-yy HH:mm:ss zzz", culture);