dateTimeFormat static method
String
dateTimeFormat(
- BuildContext context, {
- required Object? time,
- FormatFn? customFormat,
- HmsFormat? hmsAddFormat,
日期格式化: 且会根据不同国家显示不同的样式 默认格式:2023/10/06 12:56:34 customFormat格式是:日期格式化,DateFormat.yMd,DateFormat.Md,DateFormat.yMMMMd hmsAddFormat: 添加时分秒的格式化样式 time,可以是 DateTime类型,String,int类型为时间戳
Implementation
static String dateTimeFormat(
BuildContext context, {
required Object? time,
FormatFn? customFormat,
HmsFormat? hmsAddFormat,
}) {
if (time == null) return '';
if (time == '') return '';
DateTime dateTime = DateTime.now();
if (time is DateTime) {
dateTime = time;
} else if (time is String) {
dateTime = DateTime.parse(time).toLocal();
} else if (time is int) {
if (time.toString().length == 10) {
time = time * 1000;
}
dateTime = DateTime.fromMillisecondsSinceEpoch(time);
}
// 默认 2023/10/06 12:56:34
if (hmsAddFormat == null && customFormat == null) {
return DateFormat.yMd(
HbCommonLocalizations.of(context).localeName,
).add_Hms().format(dateTime);
}
// 只格式化时分秒
if (customFormat == null) {
switch (hmsAddFormat) {
case HmsFormat.h:
return DateFormat.H(
HbCommonLocalizations.of(context).localeName,
).format(dateTime);
case HmsFormat.hm:
return DateFormat.Hm(
HbCommonLocalizations.of(context).localeName,
).format(dateTime);
default:
return DateFormat.Hms(
HbCommonLocalizations.of(context).localeName,
).format(dateTime);
}
}
// 只格式化年月日
if (hmsAddFormat == null) {
return customFormat(
HbCommonLocalizations.of(context).localeName,
).format(dateTime);
}
// 格式化年月日和时分秒
DateFormat dateFormatTem = customFormat(
HbCommonLocalizations.of(context).localeName,
);
switch (hmsAddFormat) {
case HmsFormat.h:
return dateFormatTem.add_H().format(dateTime);
case HmsFormat.hm:
return dateFormatTem.add_Hm().format(dateTime);
default:
return dateFormatTem.add_Hms().format(dateTime);
}
}