将字符串转换为标准c#datetime
我有这根绳子将字符串转换为标准c#datetime,c#,string,datetime,C#,String,Datetime,我有这根绳子 2018年11月1日10:50我想把它转换成这样的日期时间格式 2018-11-01 10:50:00.000 我试过这个 DateTime.ParseExact("01 Nov 2018 10:50", "yyyy-MM-dd HH:mm:ss,fff", null) 但我有个例外 System.FormatException:'字符串未被识别为有效的 日期时间。” 请尝试其他格式: var date = DateTime.ParseExact("01 Nov 2018 10
2018年11月1日10:50
我想把它转换成这样的日期时间格式
2018-11-01 10:50:00.000
我试过这个
DateTime.ParseExact("01 Nov 2018 10:50", "yyyy-MM-dd HH:mm:ss,fff", null)
但我有个例外
System.FormatException:'字符串未被识别为有效的
日期时间。”
请尝试其他格式:
var date = DateTime.ParseExact("01 Nov 2018 10:50", "dd MMM yyyy HH:mm")
拥有date
对象后,可以将其转换为所需的格式:
date.ToString("yyyy-MM-dd HH:mm:ss,fff");
ParseExact
需要一个与输入匹配的格式定义作为第二个参数
与您的输入匹配的格式定义是“dd-MMM-yyy-HH:mm”
有关有效的格式定义,请参阅。当您使用
ParseExact
时,应该在方法的第二个参数上传递要解析的确切格式。您正在为ParseExact
方法设置完全不同的格式。试试这个:
DateTime.ParseExact("01 Nov 2018 10:50", "dd MMM yyyy HH:mm", null)
这里有完整的参考资料:您认为格式字符串(yyyy-MM…)是什么意思?请参考我认为有
不是,
是的。首先,你为什么认为“11月1日”可以和“yyyy-MM”分开?小时、分钟等的位置。可能的重复项看起来像是在使用excel,它用逗号分隔毫秒。请尝试用句点替换逗号,然后重试。