我有这个字符串
01 Nov 2018 10:50
,我想像这样将其转换为Datetime格式
2018-11-01 10:50:00.000
我已经尝试过
DateTime.ParseExact("01 Nov 2018 10:50", "yyyy-MM-dd HH:mm:ss,fff", null)
但是我要例外了
System.FormatException:'字符串未被识别为有效字符串 日期时间。”
答案 0 :(得分:3)
@Value("${PRODUCTS_URL}")
private String PRODUCTS_URL;
期望使用与您的输入匹配的格式定义作为第二个参数。
与您的输入匹配的格式定义为ParseExact
。
有关有效的格式定义,请参考Custom Date and Time Format Strings。
答案 1 :(得分:2)
尝试其他格式:
var date = DateTime.ParseExact("01 Nov 2018 10:50", "dd MMM yyyy HH:mm")
拥有date
对象后,您可以将其转换为所需的格式:
date.ToString("yyyy-MM-dd HH:mm:ss,fff");
答案 2 :(得分:0)
使用ParseExact
时,应该在方法的第二个参数上传递要解析的确切格式。您正在为ParseExact
方法设置完全不同的格式。试试这个:
DateTime.ParseExact("01 Nov 2018 10:50", "dd MMM yyyy HH:mm", null)
您在此处获得了完整的参考:https://docs.microsoft.com/en-us/dotnet/api/system.datetime.parseexact?view=netframework-4.7.2