-3

我想在 C# 中String转换为DateTime.

我的字符串包含:String input = "2012-07-31T00:00:00.000+0200"

我使用了以下模式:String datePattern = "yyyy-MM-dd%HH:mm:ss.fffz";

MyDateTime myDate = new DateTime();
MyDateTime myDate = DateTime.ParseExact(input, datePattern, null);

我收到以下错误:String was not recognized as a valid DateTime.

很确定,因为我不确定如何解决这个问题'T'以及我应该使用哪个时区。在msdn上有它的三个变体

我需要使用哪一个,或者我可以创建自己的一个?有什么建议么?

4

1 回答 1

2

您可以使用类似The "K" Custom Format Specifier"yyyy-MM-ddTHH:mm:ss.FFFK"格式;

string s = "2012-07-31T00:00:00.000+0200";
var date = DateTime.ParseExact(s, "yyyy-MM-dd'T'HH:mm:ss.FFFK", CultureInfo.InvariantCulture);
Console.WriteLine(date);

输出将是;

7/30/2012 10:00:00 PM

这里一个demonstration.

有关更多信息,请查看;

于 2013-10-31T11:36:01.787 回答