如何将 "hh:mm:ss.SSS" 的字符串解析为 DateTime

How to parse a String of "hh:mm:ss.SSS" into a DateTime

"new DateTime.now()" 的格式将打印以下输出:

2015-05-20 07:34:43.018

通过仅将时间作为格式正确的字符串 ("07:34:43.018"),我如何将时间解析为 DateTime 对象? intl 包的使用不支持提到的格式 AFAIK。

通过在时间前面加上 Date 前缀,DateTime 将能够解析给定的字符串。

DateTime parse(String timeValue) {
   var prefix  = '0000-01-01T';
   return DateTime.parse(prefix + timeValue);
}

如果您还只想显示之后的时间,请相应地设置 DateTime 变量的格式:

String format(DateTime value) {
   return "${value.hour}:${value.minute}:${value.second}.${value.millisecond}";
}

我主要不得不解析字符串以与其他时间值进行计算(差异)。