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
相关产品推荐
相关产品推荐

