Flutter 如何在dart中将时间戳字符串从24小时格式转换为12小时格式?
我正在开发颤振应用程序,其中我必须显示时间戳,但我从api得到的响应是24小时格式,我希望在我的应用程序中以12小时格式显示时间 我想以这种格式在应用程序上显示Flutter 如何在dart中将时间戳字符串从24小时格式转换为12小时格式?,flutter,dart,formatting,type-conversion,timestamp,Flutter,Dart,Formatting,Type Conversion,Timestamp,我正在开发颤振应用程序,其中我必须显示时间戳,但我从api得到的响应是24小时格式,我希望在我的应用程序中以12小时格式显示时间 我想以这种格式在应用程序上显示 您能帮我介绍一下从24小时到12小时格式化的最简单方法吗?您需要导入import'package:intl/intl.dart'位于文件顶部。然后DateFormat(“h:mma”)就可以了。Dartintlframework帮助您将日期/时间格式化为您想要的任何类型 特别是对于您的情况,您可以使用此代码 DateFormat("h
您能帮我介绍一下从24小时到12小时格式化的最简单方法吗?您需要导入
import'package:intl/intl.dart'代码>位于文件顶部。然后DateFormat(“h:mma”)
就可以了。Dartintl
framework帮助您将日期/时间格式化为您想要的任何类型
特别是对于您的情况,您可以使用此代码
DateFormat("h:mma").format(date);
@正如Sam指出的,Umair可以使用package,也可以使用jm()函数,而无需像这样显式声明格式
默认值日期时间
类MyAppState扩展了状态{
@凌驾
小部件构建(构建上下文){
返回材料PP(
家:脚手架(
appBar:appBar(
标题:文本(“测试”),
),
主体:填充物(
填充:所有边缘设置(20.0),
儿童:中心(
子项:Text(新的DateFormat.jm().format(DateTime.now()),style:TextStyle(fontSize:18.0),
)
)
));
}
}
截图:
用于24小时时间戳字符串
类MyAppState扩展了状态{
@凌驾
小部件构建(构建上下文){
字符串timeStamp24HR=“2020-07-20T18:15:12”;
返回材料PP(
家:脚手架(
appBar:appBar(
标题:文本(“测试”),
),
主体:填充物(
填充:所有边缘设置(20.0),
儿童:中心(
child:Text(新的DateFormat.jm().format(DateTime.parse(timeStamp24HR)),style:TextStyle(fontSize:18.0),
)
)
));
}
}
截图:
更多关于flatter解析方法的信息,请点击这里-使用import'package:intl/intl.dart'中的函数代码>库
DateFormat.Hm().format(日期)代码>
它将提供24小时格式的时间23:30
,以将UTC时间转换为具有指定格式(包括日期)的本地时间
var dateFormat = DateFormat("dd-MM-yyyy hh:mm aa"); // you can change the format here
var utcDate = dateFormat.format(DateTime.parse(uTCTime)); // pass the UTC time here
var localDate = dateFormat.parse(utcDate, true).toLocal().toString();
String createdDate = dateFormat.format(DateTime.parse(localDate)); // you will local time
您可以简单地使用TimeOfDay类:
var time = TimeOfDay.fromDateTime(DateTime.now());
print(time.hourOfPeriod);
print(time.minute);
print(time.period);
你是如何用24小时制完成这项工作的?您的方法仅适用于12小时格式。
var time = TimeOfDay.fromDateTime(DateTime.now());
print(time.hourOfPeriod);
print(time.minute);
print(time.period);