Как конвертировать метку времени Twitter в DateTime? - PullRequest
9 голосов
/ 12 февраля 2011

Я уже некоторое время гуглю это, но так и не смог найти ответ на свою проблему.

Я создаю клиент Twitter с использованием C # и Windows Presentation Foundation и не могу понять, как изменить метки времени, которые Twitter предоставляет, на метки времени DateTime или UNIX.

Я знаю, что это возможно с Regex, но я так и не нашел решения.

Есть ли какой-нибудь простой способ сделать это, о котором я не знаю? Формат метки времени в Твиттере, из которого я пытаюсь конвертировать, выглядит следующим образом:

Fri Feb 11 23:45:15 +0000 2011

Есть идеи?

Ответы [ 2 ]

14 голосов
/ 12 февраля 2011

На основе образца в другом месте , как насчет использования метода ParseExact :

const string format = "ddd MMM dd HH:mm:ss zzzz yyyy";
my_date = DateTime.ParseExact(dateString, format, CultureInfo.InvariantCulture);
5 голосов
/ 12 февраля 2011
DateTimeOffset timestamp;
if (DateTimeOffset.TryParseExact(
    "Fri Feb 11 23:45:15 +0000 2011",
    "ddd MMM dd HH:mm:ss K yyyy",
    null,
    DateTimeStyles.None,
    out timestamp))
  ; // use timestamp

Это предполагает:

  • Текущая культура подходит для использования (например, «Пт», «Фев» и т. Д.)
  • Даты, часы, минуты и секунды заполнены нулями (например, «Пт, февраль 04, 02:05:02 +0000 2011»)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...