Как разобрать строку даты Flash с .NET? - PullRequest
0 голосов
/ 18 июля 2011

Я получаю флэш-дату в следующем формате: Вс 17 июля 20:43:02 GMT-0600 2011

Метод DateTime.Parse по умолчанию не распознает его как действительное время. Есть ли способ разобрать его, чтобы получить действительный UTC DateTime?

Ответы [ 2 ]

1 голос
/ 18 июля 2011

Вы должны взглянуть на методы разбора класса DateTime, которые принимают формат, они более гибкие в чтении дат, которые следуют различным форматам.Посмотрите, работает ли что-то в этом направлении (смело меняйте формат):

// Parse date and time with custom specifier.
string dateString = "Sun 15 Jun 2008 8:30 AM -06:00";
string format = "ddd dd MMM yyyy h:mm tt zzz";
CultureInfo provider = CultureInfo.InvariantCulture;
try {
   DateTime result = DateTime.ParseExact(dateString, format, provider);
   Console.WriteLine("{0} converts to {1}.", dateString, result.ToString());
}
catch (FormatException) {
   Console.WriteLine("{0} is not in the correct format.", dateString);
}

Дополнительные примеры здесь:

http://msdn.microsoft.com/en-us/library/w2sa9yss.aspx

0 голосов
/ 18 июля 2011

Ваш точный формат для этого примера будет следующим

var d = "Sun Jul 17 20:43:02 GMT-0600 2011";
var dt = DateTime.ParseExact(d, "ddd MMM dd HH:mm:ss 'GMT'zz'00' yyyy", System.Globalization.CultureInfo.InvariantCulture);
Console.WriteLine(dt.ToString());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...