我正在尝试转换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.
这样做的正确方法是什么?
我正在尝试转换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
orParseExact
操作字符串命令,例如:
string stringDate= "10/10/2010 12:00:00 P.M.";
var myDate = DateTime.Parse(stringDate.Replace(".", ""));
如果您获得的原始数据以“am”结尾,您也可以尝试以下代码示例。只需替换该字符:
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
.