日期时间转换和解析DateTime.Now.ToString(“MM / DD / YYYY HH:

2019-06-24 11:13发布

我存储在一个CSV日志一些日期时间:

DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff")

当我尝试读它,我发现是这样的:

"05/15/2012 10:09:28.650"

问题是,当我试图再次将它转换为一个DateTime ...

DateTime.Parse("05/15/2012 10:09:28.650");

抛出一个异常“无效的日期时间”或类似的东西...

我怎样才能正确地重新读取日期时间?

Answer 1:

您可以使用DateTime.ParseExact

string format = "MM/dd/yyyy hh:mm:ss.fff";
DateTime d = DateTime.ParseExact("05/15/2012 10:09:28.650",
                                format,
                                System.Globalization.CultureInfo.InvariantCulture);

标准日期和时间格式字符串



Answer 2:

使用DateTime.ParseExact与指定格式

String dateStr=DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff");
DateTime date = DateTime.ParseExact(dateStr,"MM/dd/yyyy hh:mm:ss.fff",System.Globalization.CultureInfo.InvariantCulture);


Answer 3:

您应该使用这种方法来分析您的字符串。 你将不得不作出一个类,imlementing的IFormatProvider,但如果你想使用自定义DateTime格式,这是我能想到的最好的方法。



文章来源: DateTime Conversion and Parsing DateTime.Now.ToString(“MM/dd/yyyy hh:mm:ss.fff”)