Flutter/Dart TimeOfDay 对象 returns TimeOfDay(15:00) 而不仅仅是时间

Flutter/Dart TimeOfDay object returns TimeOfDay(15:00) instead of only the time

我想打印我手动初始化的时间,但如果我打印它,那么我只能在这里得到这个。

I/flutter (14375): TimeOfDay(15:00)

这是我的代码

Future<void> ausgabe(BuildContext context) async {
Map<String, TimeOfDay> zeiten = {"Montag": TimeOfDay(hour: 15, minute: 0)};
print(zeiten["Montag"]);

}

如何只打印 15:00 而不是 TimeOfDay(15:00)?

使用format()方法

Map<String, TimeOfDay> zeiten = {"Montag": TimeOfDay(hour: 15, minute: 0)};
TimeOfDay time = zeiten["Montag"];
print('${time.hour}:${time.minute.toString().padLeft(2, '0')}');

您可以使用:

TimeOfDay time = TimeOfDay(hour: 15, minute: 0);
print(time.format(context));

或者您可以使用 intl flutter package 中的 DateFormat 来做到这一点。

print(DateFormat("HH:mm").format(new DateTime(
    2000,
    1,
    1,
    time.hour,
    time.minute)))