如何解析CET/CEST日期时间?

mar*_*zzz 2 .net c# datetime parsing

我在服务器上有一个JSON,我尝试解析它.问题是某些日期看起来像:

Tue, 03 Sep 2013 12:18:45 CEST
Run Code Online (Sandbox Code Playgroud)

一些如下:

Sat, 17 Nov 2012 15:39:43 CET
Run Code Online (Sandbox Code Playgroud)

所以如果我做的事情如下:

var processedData = DateTime.ParseExact((string)item.pubDate, "ddd, dd MMM yyyy HH:mm:ss CEST", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

只有在CEST它工作的日期,否则它会引发异常.

我该如何解决?我希望.Replace()不是答案......

Hab*_*bib 6

您可以使用多种格式,例如:

string[] formats = new[] 
{
    "ddd, dd MMM yyyy HH:mm:ss CEST",
    "ddd, dd MMM yyyy HH:mm:ss CET"
};

var processedData = DateTime.ParseExact((string)item.pubDate,
                                    formats, 
                                    CultureInfo.InvariantCulture, 
                                    DateTimeStyles.None);
Run Code Online (Sandbox Code Playgroud)