📅  最后修改于: 2023-12-03 15:39:02.397000             🧑  作者: Mango
当我们需要在 Flutter 应用中处理时间时,TimeOfDay 是一个非常有用的类。它表示一天中的某个时间,例如上午 10:30。但是,如果我们要从字符串中解析出 TimeOfDay 值,该怎么做呢?
在 Dart 中,我们可以使用第三方库 intl
来实现这个功能。下面是一个例子,展示了如何将字符串转换为 TimeOfDay 颤动:
import 'package:intl/intl.dart';
TimeOfDay getTimeOfDayFromString(String timeString) {
// 将时间字符串解析为日期时间对象
final parsedTime = DateFormat.Hm().parse(timeString);
// 创建一个 TimeOfDay 对象并返回
return TimeOfDay.fromDateTime(parsedTime);
}
首先,我们导入 intl
库,并创建了一个 getTimeOfDayFromString
函数,该函数接受一个时间字符串作为参数并返回一个 TimeOfDay 颤动。
该函数首先使用 DateFormat.Hm()
方法将时间字符串解析为日期时间对象。此方法将时间字符串(例如“10:30”)转换为一个 Datetime 对象,该对象表示一天中的特定时间。
然后,我们使用 TimeOfDay.fromDateTime()
方法将 DateTime 对象转换为 TimeOfDay 颤动,最后返回该值。
如果您希望更深入地了解 Dart 中的日期和时间操作,请查看 Dart 的官方文档。