我从XML文档中获取此类数据:
2012-08-29T18:18:00+02:00
我想用DateTime对象转换它。所以我可以按照自己的意愿管理它,只需要一天和/或一个月。
但如果我这样做:
DateTime.Parse("2012-08-29T18:18:00+02:00").Date
我得到像\/Date(1346191200000)\/
:O
我哪里错了?我想在解析它时需要指定日期类型?
建议之后,我尝试了这些数据:
string dataStr = "2012-11-15T13:50:58+01:00";
DateTime data = DateTime.Parse(dataStr).Date;
Response.Write(data.Hour + "<br />");
但输出为0
,因此缺少时间。为什么呢?
答案 0 :(得分:1)
根据您的最新更新:
DateTime d = DateTime.ParseExact("2012-11-15T13:50:58+01:00", "yyyy-MM-ddTHH:mm:ssK", null);
Response.Write(d.Hour + "<br />");
答案 1 :(得分:1)
它是xmls中使用的标准格式,所有xml解析器都应该正确处理它。您不需要解析它。 例如,使用Linq2Xml,您所要做的就是将其转换为DateTime对象
XElement xElem = new XElement("Time", "2012-08-29T18:18:00+02:00");
var dt = (DateTime)xElem;