Как отформатировать Дату?
из DateTime.now() должно получиться вот такой формат даты:
"2021-04-27T15:45:00+06:00"
Ответы (2 шт):
Автор решения: Maxgmer
→ Ссылка
Это формат ISO-8601. Получить подобную строку можно так:
DateTime.now().toIso8601String()
Автор решения: Spatz
→ Ссылка
Насколько я понял, то основная проблема состоит в добавлении временной зоны. При желании это можно сделать так:
void main() {
final dt = DateTime.now();
String tz;
if (dt.isUtc) {
tz = 'Z';
} else {
final tzo = dt.timeZoneOffset;
final hours = tzo.inHours.abs().toString().padLeft(2, '0');
final minutes = tzo.inMinutes.abs().remainder(60).toString().padLeft(2, '0');
tz = '${tzo.isNegative ? '-' : '+'}$hours:$minutes';
}
print('${dt.toIso8601String().substring(0, 19)}${tz}');
// 2021-04-27T18:26:06+03:00
}