如何从 API 转换传入的 epoch 值并在 flutter 中加载到数据表?
将纪元转换为日期时间。
class oHolidays extends StatefulWidget {
const Holidays({Key? key}) : super(key: key);
@override
State<Holidays> createState() => _HolidaysState();
}
class _HolidaysState extends State<Holidays> {
late SharedPreferences prefs;
List<HolidayModel> HolidayData = [];
@override
void initState() {
_initController();
super.initState();
}
void _initController()async {
prefs = await SharedPreferences.getInstance();
HolidayResponseModel dd = holidayResponseModelFromJson(prefs.getString("holidays")!);
dd.data.forEach((e){
if(e.type == Type.ON_SHORE){
setState(() {
onShoreData.add(e);
});
}
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: SingleChildScrollView(
scrollDirection: Axis.vertical,
child: SingleChildScrollView(
scrollDirection: Axis.horizontal,
child: DataTable(columns: const [
DataColumn(
label: Text('HOLIDAY'),
),
DataColumn(
label: Text('MONTH'),
),
DataColumn(
label: Text('DATE'),
),
DataColumn(
label: Text('DAY'),
),
], rows: List.generate(onShoreData.length, (index) => DataRow(cells: [
DataCell(Text(HolidayData [index].reason)),
DataCell(Text(HolidayData [index].date.toString())),
DataCell(Text(HolidayData [index].date.toString())),
DataCell(Text(HolidayData [index].date.toString())),
]))),
),
),
);
}
}
这是我的代码,它从那个日期字段中的 API 获取数据,想要在 flutter 中将纪元转换为日期时间格式。
任何人都可以帮助我实现这一目标!
不确定这是否正是您要的,但如果您想将纪元时间戳转换为 DateTime,然后格式化为不同的格式,您可以使用类似的东西:
final date = DateTime.fromMillisecondsSinceEpoch(epochTimestamp);
print("Month: ${DateFormat.MMMM().format(date)}");
print("Day Month: ${DateFormat("dd MMM").format(date)}");
您可以使用预先存在的格式(如第二行)或提供自己的格式(如第三行)