flutter - 如何使用 intl DateFormat 将字符串 "1030"转换为 "10:30am"

标签 flutter dart flutter-intl

我正在处理时间字符串,例如“1030”或“0230”

我正在尝试:

var time = "1030";
DateFormat.jm().format(DateFormat("hhmm").parse(time));

但是会引发以下错误:

Unhandled Exception: FormatException: Trying to read mm from 1030 at position 4

我做错了什么?

编辑:Nvm,我想我必须将时间子串为“hour:min”并使用“hh:mm”,然后它才能工作。因此,将时间“1030”转换为“10:30”,然后使用“hh:mm”..

最佳答案

使用

HH:mm

var time = "10:30";
DateFormat.jm().format(DateFormat("HH:mm").parse(time));

关于flutter - 如何使用 intl DateFormat 将字符串 "1030"转换为 "10:30am",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71609010/

相关文章:

android - Flutter:相当于NSLocale (iOS) & Locale (Android)

gridview - 如何在列中居中放置 GridView.builder?

flutter - 为什么 2 个容器之间有一条白线 flutter

android - Flutter 代码库在 GitHub Actions 中构建 APK 返回 'undefined: No tag found in ref or input!'

Flutter Url Launcher 不会将整个文本传递给短信

flutter - 如何将国际化添加到 Flutter 插件

date - Flutter:国际时间

android - 输入几行后文本输入的底部溢出 flutter

android - 为 Flutter 中的选项卡添加底部边框

Flutter 分析发现 Gitlab CI/CD 管道中存在本地未发现的问题