如何获取两个日期时间之间的差异(天-小时-分钟)?
DateTime a = someTimeStamp.toDate();
print(a);
final now = DateTime.now();
print(now);
var difference = now.difference(a).inMilliseconds;
print(difference);
var dt = DateTime.fromMillisecondsSinceEpoch(difference);
print(dt);
最后显示 1970-01-05 06:40:01.632
你可以这样得到它们:
DateTime a = DateTime(2022,3,29,4,56);
DateTime b = DateTime.now();
Duration difference = b.difference(a);
print(difference);
int days = difference.inDays;
int hours = difference.inHours % 24;
int minutes = difference.inMinutes % 60;
int seconds = difference.inSeconds % 60;
print("$days day(s) $hours hour(s) $minutes minute(s) $seconds second(s).");
输出:
103:14:07.663000
4 day(s) 7 hour(s) 14 minute(s) 7 second(s).
可以使用
DateTime
类提供的差分方法
//the birthday's date
final birthday = DateTime(1967, 10, 12);
final date2 = DateTime.now();
final difference = date2.difference(birthday).inDays;
也请尝试以下
int daysBetween(日期时间从,日期时间到){ from = DateTime(from.year, from.month, from.day); to = DateTime(to.year, to.month, to.day); return (to.difference(from).inHours / 24).round(); }
//生日日期 最后生日 = DateTime(1967, 10, 12); 最终日期2 = DateTime.now(); 最终差异 = daysBetween(生日, date2);