2009-10-11 91 views
1

我对IIS服务器执行HttpWebRequest。 其中一个响应标题是日期,我想解析它。 这是它的数值:如何在.NET中解析IIS响应标头“日期”

"Sun, 11 Oct 2009 08:16:13 GMT"

如何判断这个字符串? DateTime.Parse对我来说工作不太好。

谢谢!

+0

您好,我想,这将是一个相当为你的问题添加一个标签“.NET”的好主意 – AndreyAkinshin 2009-10-11 09:01:02

回答

2

使用DateTime.TryParse

var d = "Sun, 11 Oct 2009 08:16:13 GMT"; 
DateTime dt; 
var b = DateTime.TryParse(d, CultureInfo.InvariantCulture.DateTimeFormat, 
    DateTimeStyles.None, out dt); 
Console.WriteLine(dt); 

输出:

11-10-2009 01:46:13 

注:时间是有点没谱,我认为它被转换为本地时间。

5

您可以使用DateTime.ParseExact指定您尝试解析的确切格式。未经测试,它看起来像你需要:

DateTime.ParseExact(input, "ddd, dd MMM yyyy HH:mm:ss K"); 

或者,如果GMT给你的麻烦,使用DateTimeStyles超载ParseExact

DateTime.ParseExact(input, "ddd, dd MMM yyyy HH:mm:ss 'GMT'", 
    CultureInfo.InvariantCulture.DateTimeFormat, DateTimeStyles.AssumeUniversal);