flutter如何格式化日期
在Flutter中如何将日期格式化为指定的字符串形式?比如将DateTime对象转换为"yyyy-MM-dd"或"HH:mm:ss"这样的格式?有没有内置的方法或者需要引入第三方库?最好能提供简单的代码示例说明如何使用。
2 回复
在Flutter中,使用 intl 包格式化日期。首先引入包,然后使用 DateFormat 类:
import 'package:intl/intl.dart';
String formattedDate = DateFormat('yyyy-MM-dd').format(DateTime.now());
例如,2023-10-05。
更多关于flutter如何格式化日期的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
在Flutter中,可以使用 intl 包来格式化日期。
安装依赖
在 pubspec.yaml 中添加:
dependencies:
intl: ^0.18.1
然后运行 flutter pub get
基本使用方法
1. 导入包
import 'package:intl/intl.dart';
2. 常用格式化示例
// 当前日期
DateTime now = DateTime.now();
// 格式化为 yyyy-MM-dd
String formattedDate1 = DateFormat('yyyy-MM-dd').format(now);
// 输出:2024-01-15
// 格式化为 yyyy年MM月dd日
String formattedDate2 = DateFormat('yyyy年MM月dd日').format(now);
// 输出:2024年01月15日
// 格式化为完整日期时间
String formattedDate3 = DateFormat('yyyy-MM-dd HH:mm:ss').format(now);
// 输出:2024-01-15 14:30:25
// 格式化为星期几
String formattedDate4 = DateFormat('EEEE').format(now);
// 输出:星期一
3. 预定义格式
// 短日期格式
String shortDate = DateFormat.yMd().format(now);
// 输出:1/15/2024
// 长日期格式
String longDate = DateFormat.yMMMMd('zh_CN').format(now);
// 输出:2024年1月15日
// 完整日期时间
String fullDateTime = DateFormat.yMMMMEEEEd().format(now);
// 输出:2024年1月15日星期一
4. 解析字符串为日期
String dateString = "2024-01-15";
DateTime parsedDate = DateFormat('yyyy-MM-dd').parse(dateString);
常用格式符号
yyyy:4位年份MM:2位月份dd:2位日期HH:24小时制小时mm:分钟ss:秒EEEE:星期几全称
使用 intl 包可以轻松实现各种日期格式需求。

