日期时间格式的字符串
本文关键字:字符串 格式 时间 日期 | 更新日期: 2023-09-27 17:51:22
我正在尝试将10/10/2010 12:00:00 a.m.
转换为dateTime。
DateTime.ParseExact(item.Birthey, "dd/MM/yyyy hh:mm:ss tt", null);
得到String was not recognized as a valid DateTime.
正确的做法是什么?
只需尝试Parse
或ParseExact
操作字符串命令,如:
string stringDate= "10/10/2010 12:00:00 P.M.";
var myDate = DateTime.Parse(stringDate.Replace(".", ""));
如果您获得的原始数据以"a.m."结尾,您也可以尝试下面的代码示例。只需要替换这些字符:
string stringDate= "10/10/2010 12:00:00 a.m.";
DateTime result = DateTime.ParseExact(stringDate.Replace(".", ""),
"dd/MM/yyyy hh:mm:ss tt", null);
试试
DateTime.ParseExact("10/10/2010 12:00:00 am", "dd/MM/yyyy hh:mm:ss tt", null).Dump();
a.m.
中的.
正在制造问题。您可以使用Replace来删除.
(因为在您的日期格式中,.
只能出现在a.m.
或p.m.
中)
DateTime.ParseExact("10/10/2010 12:00:00 a.m.".Replace(".",""), "dd/MM/yyyy hh:mm:ss tt", null).Dump();
尝试指定CultureInfo.InvariantCulture
而不是null
。在您的例子中,它使用CultureInfo.CurrentCulture