Десериализация даты из XML - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток, коллеги. Столкнулся с проблемой десериализации данных. Суть проблемы: есть некоторый веб-сервис написанный на жабе. Этот сервис принимает HTTP Get запросы и возвращает XML в ответ. Одним из значений в xml прилетает дата, только формат у нее адский:
<OpenDate.Typed>Mon Oct 17 00:00:00 MSK 2016</OpenDate.Typed>
Пробовал распотрошить

это

разными способами, но всегда результат один - строка не распознана как DateTime. Даже заложенный корпорацией зла

XmlConvert

сломался под гнетом этого жабизма Подскажите, может кто сталкивался с подобным? Писать свою реализацию

IXmlSerializer

для этого не особо хочется... Заранее спасибо.

Решение задачи: «Десериализация даты из XML»

textual
Листинг программы
string s = "Mon Oct 17 00:00:00 MSK 2016";
string timeZoneId = s.Split()[4];
var tz = new Dictionary<string,TimeSpan>() { {"MSK", TimeSpan.FromHours(3)} };
var dt = DateTime.ParseExact(s.Replace(timeZoneId, ""), @"ddd MMM dd HH:mm:ss  yyyy", CultureInfo.InvariantCulture);
var dto = new DateTimeOffset(dt, tz[timeZoneId]);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5