我的XML配置数据文件中有一个这样的字符串(12小时制):
expires="10/27/2014 2:42:57 PM"
我想将该值指定为类的(datetime)成员,如下所示:
Common.SOExpiries =
DateTime.ParseExact(gSet.Attribute("expires").Value, "MM/dd/yyyy hh:mm:ss",
CultureInfo.InvariantCulture);
但我收到错误' String未被识别为有效的DateTime'
我在这里做错了什么?
这是在英国顺便说一句,所以CultureInfo应该没问题
答案 0 :(得分:5)
应该是:
"MM/dd/yyyy h:mm:ss tt"
因为您忘记了tt
表示上午/下午和h
,因为您有1-12小时,而不是01-12小时格式。考虑您的秒数和分钟数是否也应为s
和m
。
答案 1 :(得分:1)
您还需要解析AM / PM部分。
Common.SOExpiries =
DateTime.ParseExact(gSet.Attribute("expires").Value, "MM/dd/yyyy hh:mm:ss tt",
CultureInfo.InvariantCulture);