Попытка конвертировать метку времени из твиттер-API в DateTime во флаттере - PullRequest
0 голосов
/ 29 марта 2020

Чтобы сделать его более понятным: из Twitter API вы получите String Date в этом формате (четверг, 26 марта 11:51:30 +0000 2020). Все, что я хочу сделать, - это выполнить синтаксический анализ этой строки в формате DateTime, поэтому мне нужно измените формат с этого (чт. 26 марта, 11:51:30 +0000 2020) на что-то вроде этого (26.04.2020 11:51:30), это как-то возможно? Спасибо:)

1 Ответ

0 голосов
/ 29 марта 2020

Вы можете использовать метод подстроки строки и вырезать каждую деталь, а затем передать все это в datetime.

Надеюсь, следующий код решит вашу проблему.

  int month;
  String datetime = "Thu Mar 26 11:51:30 +0000 2020";
  String monthInString = datetime.substring(4, 7);
  int day = int.parse(datetime.substring(8, 10));
  int hours = int.parse(datetime.substring(11, 13));
  int min = int.parse(datetime.substring(14, 16));
  int second = int.parse(datetime.substring(17, 19));
  int year = int.parse(datetime.substring(26, 30));
  DateTime _dateTime;
  switch (monthInString) {
    // add all months
    case 'Jan':
      month = 1;
      break;
    case 'Mar':
      month = 3;
      break;
  }
  _dateTime = DateTime.utc(year, month, day, hours, min, second);
  print(_dateTime);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...