date - 如何在 DART(Flutter)中舍入最接近 30 分钟间隔的日期时间?

标签 date datetime flutter dart

我想将 DateTime 舍入到最接近的 30 分钟。 DART 中是否提供舍入机制?

最佳答案

我今天遇到了类似的问题,但它会限制在接下来的 15 分钟内。

DateTime nearestQuarter(DateTime val) {
  return DateTime(val.year, val.month, val.day, val.hour,
    15, 30, 45, 60][(val.minute / 15).floor()]);
}

或者在你的情况下

DateTime nearestHalf(DateTime val) {
  return DateTime(val.year, val.month, val.day, val.hour,
    [30, 60][(val.minute / 30).floor()]);
}

我刚注意到你说“最近半小时”

DateTime nearestHalf(DateTime val) {
  return DateTime(val.year, val.month, val.day, val.hour,
    [0, 30, 60][(val.minute / 30).round()]);
}

https://francescocirillo.com/pages/anti-if-campaign

关于date - 如何在 DART(Flutter)中舍入最接近 30 分钟间隔的日期时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60880315/

相关文章:

Angular 5 按日期排序

Java ResultSet.getString() 用于日期字段显示 00 :00:00. 0

sql-server - 将日期转换为 varchar,然后将其转换回日期

c++ - 获得绝对时间的更好方法?

flutter - 在 float 操作按钮上的 onPressed 回调中从脚手架显示 snackbar

flutter - 如何在 flutter 中淡入装饰图像?

flutter - 如何在Flutter或Dart中将字符串编码为RFC 3986?

asp.net - 需要一个免费的 ASPX 日期选择器

php - Json DateTime 对象到 GregorianCalendar

php - 在 00 :00:00 using DateTime? 获取上个月的第一天