我有一个日期表示为字符串
20130116154407
我为此调用了 DateTime.Parse,但它失败了。如何将其转换为 DateTime?顺便说一句,时区是 CET。
编辑
到目前为止,提供的解决方案非常有用,但似乎它们不支持 24 小时制,仍在寻找支持的解决方案。
编辑 2
正确的格式是
DateTime.ParseExact(str, "yyyyMMddHHmmss", CultureInfo.InvariantCulture)
谢谢,
萨钦
您需要指定格式:
DateTime.ParseExact(str, "yyyyMMddHHmmss", CultureInfo.InvariantCulture)
使用此代码
string DATE_FORMAT= "yyyyMMddhhmmss";
DateTime date;
if(DateTime.TryParseExact(str, DATE_FORMAT, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None, out date))
{
//success
//you can use date
}else
{
//fail
}
尝试DateTime.ParseExact
var dt = DateTime.ParseExact("20130116154407", "yyyyMMddhhmmss", CultureInfo.InvariantCulture);