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

.net, c#, data-conversion, datetime, datetime-format

Solution

You can use `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);

Standard Date and Time Format Strings

Problem

I store some DateTime in a CSV log with: ``` DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff") ``` When I try to read it I found something like: ``` "05/15/2012 10:09:28.650" ``` The problem is when I try to cast it as a DateTime again... ``` DateTime.Parse("05/15/2012 10:09:28.650"); ``` Throws an Exception "Invalid DateTime" or something like that... How can I properly re-read the DateTime?

Original source