c#将字符串转换为日期类型

Pet*_*eek 4 c# asp.net

我有这个字符串:

string date = "Sun, 17 Mar 2013 12:40:23 +0000";
Run Code Online (Sandbox Code Playgroud)

并尝试转换为日期类型,但我尝试转换时不断出现格式错误.

DateTime dt = Convert.ToDateTime(date);
Run Code Online (Sandbox Code Playgroud)

然后尝试将其纳入以下格式:

dt.ToString("dd")
dt.ToString("MMMM")
dt.ToString("yyyy")
Run Code Online (Sandbox Code Playgroud)

M. *_*ara 7

您可以使用DateTime.ParseExact进行转换.

请尝试以下代码:

var date = "Sun, 17 Mar 2013 12:40:23 +0000";
var dt = DateTime.ParseExact(date, "ddd, dd MMM yyyy hh:mm:ss zzz", CultureInfo.InvariantCulture);

Console.WriteLine(dt.ToString("dd"));
Console.WriteLine(dt.ToString("MMMM"));
Console.WriteLine(dt.ToString("yyyy"));
Run Code Online (Sandbox Code Playgroud)

输出:

17
March
2013
Run Code Online (Sandbox Code Playgroud)

  • +1使用InvariantCulture.我怀疑这是使它运作所需要的. (2认同)