You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dart中‘DateFormat’不是类的报错解决方法

解决Dart中DateFormat未找到的错误

你遇到的DateFormat isn't a class错误,是因为DateFormat不属于Dart核心SDK,它是intl包提供的工具类,需要手动引入依赖并导入包。

解决步骤:

  • 第一步:添加intl依赖到pubspec.yaml
    在项目的pubspec.yaml文件中,找到dependencies区块,添加intl依赖(可指定稳定版本,比如intl: ^0.18.1):

    dependencies:
      flutter:
        sdk: flutter
      intl: ^0.18.1 # 添加这一行
    

    然后运行flutter pub get或dart pub get拉取依赖。

  • 第二步:在代码文件中导入intl包
    在你的Dart文件顶部,添加导入语句:

    import 'package:intl/intl.dart';
    
  • 第三步:优化时间转换代码
    原代码存在冗余步骤——parseDate已经是DateTime对象,无需二次解析。同时调整方法名遵循Dart小驼峰命名规范,修改后的代码如下:

    String convertTime(String varia) {
      DateTime parseDate = DateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").parse(varia);
      var outputFormat = DateFormat('MM/dd/yyyy hh:mm a');
      var outputDate = outputFormat.format(parseDate);
      return outputDate;
    }
    

修改后代码即可正常运行,将2022-08-27T12:03:03.484Z格式的字符串转换成08/27/2022 12:03 PM这类目标格式的时间字符串。

内容的提问来源于stack exchange,提问作者mohamed yassine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 20:54:15