Формат даты Dart / Flutter

Oct 01 2020

Я пытаюсь изменить формат строки даты, возвращаемой API. Приведенная ниже строка ввода формата даты работает нормально в java, но не в Dart.

 DateTime tempDate = new DateFormat("dd-MMM-yy hh.mm.ss.SSSSSS aa")
          .parse(notification.createdat);
      final DateFormat formatter = DateFormat('EEE M/d/yy h:mm a');
      final String formatted = formatter.format(tempDate);

Вот исправленная ошибка:

Ответы

1 Er1 Oct 01 2020 at 19:29

Это может быть потому, что SEPвсе в верхнем регистре. Вы можете проверить это, просто поместив статическую строку с Sepмесяцем в функцию синтаксического анализа.

DateTime tempDate = new DateFormat("dd-MMM-yy hh.mm.ss.SSSSSS aa")
          .parse('30-Sep-20 12.50.18.518880 pm');
      final DateFormat formatter = DateFormat('EEE M/d/yy h:mm a');
      final String formatted = formatter.format(tempDate);

Проверьте правильный синтаксис здесь https://unicode-org.github.io/icu/userguide/format_parse/datetime/#datetime-format-syntax