如何使用DateTime.ParseExact解析日期时间

时间:2017-07-03 12:21:32

标签: c# .net datetime

我有以下需要解析的字符串

Transliterate::toLatin($str)

什么是正确的格式字符串?

我试过

string date = "2017-06-23T13:45:45.816"

3 个答案:

答案 0 :(得分:7)

yyyy-MM-dd'T'hh-mm-ss不是2017-06-23T13:45:45.816您错过了毫秒,12小时时钟以及错误的分隔符。

您可能需要以下内容:

"yyyy-MM-dd'T'HH:mm:ss.fff"

记住它的 ParseExact

答案 1 :(得分:5)

这似乎是RFC 3339日期,所以Convert.ToDateTimeDateTime.Parse会这样做。

string date = "2017-06-23T13:45:45.816";
DateTime dt = Convert.ToDateTime(date);

答案 2 :(得分:0)

首先你应该替换那个' T'随着空白' '

string date = "2017-06-23T13:45:45.816";

date = date.Replace("T"," ");    // you can use this code to replace

 DateTime myDate = DateTime.ParseExact(date, "yyyy-MM-dd HH:mm:ss,fff",                                        System.Globalization.CultureInfo.InvariantCulture);

 Console.WriteLine(myDate.ToString("yyyy-MM-dd HH:mm:ss.fff")); 

// you can try this code might be it works for u