flutter如何格式化datetime
在Flutter中如何格式化DateTime对象?我尝试使用DateFormat但不知道具体怎么操作,比如想把2023-05-15 14:30:00格式化成"2023年5月15日"这样的中文格式。请问应该导入哪个库?有没有更简单的方法?需要注意时区问题吗?
        
          2 回复
        
      
      
        在Flutter中,使用intl包中的DateFormat类格式化DateTime。例如:
import 'package:intl/intl.dart';
String formatted = DateFormat('yyyy-MM-dd').format(DateTime.now());
输出:2023-10-05
更多关于flutter如何格式化datetime的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html
在Flutter中格式化DateTime可以使用intl包,这是最常用的方法。
安装依赖
在pubspec.yaml中添加:
dependencies:
  intl: ^0.18.1
然后运行 flutter pub get
基本使用方法
import 'package:intl/intl.dart';
void main() {
  DateTime now = DateTime.now();
  
  // 常用格式化示例
  print(DateFormat('yyyy-MM-dd').format(now));        // 2024-01-15
  print(DateFormat('yyyy-MM-dd HH:mm:ss').format(now)); // 2024-01-15 14:30:25
  print(DateFormat('MM/dd/yyyy').format(now));        // 01/15/2024
  print(DateFormat('EEE, MMM d, yyyy').format(now));  // Mon, Jan 15, 2024
  print(DateFormat('HH:mm').format(now));             // 14:30
}
常用格式符号
yyyy:4位数年份MM:2位数月份dd:2位数日期HH:24小时制小时mm:分钟ss:秒钟EEE:星期几缩写MMMM:月份全名
预定义格式
print(DateFormat.yMd().format(now));     // 1/15/2024
print(DateFormat.yMMMd().format(now));   // Jan 15, 2024
print(DateFormat.yMMMMd().format(now));  // January 15, 2024
print(DateFormat.Hm().format(now));      // 14:30
本地化支持
// 设置本地化
DateFormat('yyyy-MM-dd', 'zh_CN').format(now); // 中文格式
这是最推荐的DateTime格式化方法,简单且功能强大。
        
      
            
            
            
