Разобрать строку в DateTime в Flutter (Dart) - PullRequest
0 голосов
/ 23 января 2020

Я пытаюсь разобрать строку, отформатированную как "23.1.2020", в объект DateTime, но у меня ничего не работает. Я пытался использовать некоторые пакеты, такие как intl или date_format, но ни один из них не справился с работой.

DateTime todayDate = DateTime.parse("12.04.2020");
formatDate(todayDate, [yyyy, '/', mm, '/', dd, ' ', hh, ':', nn, ':', ss, ' ', am])

У вас есть идеи, как разобрать это?

Спасибо.

Ответы [ 3 ]

3 голосов
/ 23 января 2020

Если вы абсолютно уверены, что ваш формат даты всегда будет "dd.MM.yyyy", вы можете сделать это:

DateTime todayDate = DateTime.parse("12.04.2020".split('.').reversed.join());

Этот трюк отформатирует вашу дату в "yyyyMMdd" формат, который, согласно документы , принимаются DateTime.parse().

2 голосов
/ 23 января 2020

Хорошо, я нашел способ, как это сделать:

import 'package:intl/intl.dart';

DateFormat format = DateFormat("dd.MM.yyyy");
print(format.parse(date));

Спасибо за ваше время!

0 голосов
/ 31 января 2020

Попробуйте этот пакет, Jiffy , он также работает поверх Intl , но упрощает использование синтаксиса moment js. См. Ниже

var date = Jiffy("12.04.2020", "dd.MM.yyyy").format("dd, Oct yy"); // 12, Apr 20

Вы также можете использовать следующие форматы по умолчанию

var date = Jiffy("12.04.2020", "dd.MM.yyyy").yMMMMd; // April 12, 2020

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...