2009-10-11 2 views
1

Я выполнение HttpWebRequest против сервера IIS. Один из заголовков ответа является Дата, который я хотел бы разобрать. Это его значение:Как разобрать ответ IIS заголовка «Date» в .NET

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

Как parase эту строку? DateTime.Parse не очень хорошо работает для меня.

Спасибо!

+0

Привет, я полагаю, что было бы весьма хорошая идея добавить тег «.NET» на ваш вопрос – AndreyAkinshin

ответ

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); 

 Смежные вопросы

  • Нет связанных вопросов^_^