flutter 把日期字符串转为标准日期
时间: 2024-08-16 18:02:07 浏览: 33
在 Flutter 中,如果你有一个日期字符串,通常需要使用 `intl` 库中的 `DateTime.parse` 方法将其解析为 `DateTime` 对象。这是一个标准的日期格式,常见格式如 "yyyy-MM-dd"、"MM/dd/yyyy" 等。
假设你有一个字符串 `dateStr`,它的格式是 "YYYY-MM-DD",你可以这样做:
```dart
import 'package:intl/intl.dart';
import 'package:intl/date_interval_formatter.dart'; // 如果输入的日期字符串包含时间
final DateFormat inputFormat = DateFormat('yyyy-MM-dd'); // 输入日期格式
final DateTime parsedDate = inputFormat.parse(dateStr); // 解析日期字符串
// 如果输入的日期字符串包含时间,你需要先解析出单独的时间部分
final String timeStr = dateStr.split(' ');
final TimeOfDayParser timeFormat = TimeOfDay.parser();
final TimeOfDay timeParsed = timeFormat.parse(timeStr);
final DateTime fullParsedDate = parsedDate.add(Duration(hours: timeParsed.hour, minutes: timeParsed.minute, seconds: timeParsed.second));
print(parsedDate); // 输出解析后的标准日期
print(fullParsedDate); // 如果包含时间,则输出完整日期和时间
```
在这里,`DateTime.parse` 使用指定的日期格式将字符串转换成日期对象。如果你的日期字符串还包含了时间信息,记得先提取出来并分别解析。
阅读全文