在Flutter中计算不包括周末的日期

clj7thdc  于 2022-12-14  发布在  Flutter
关注(0)|答案(1)|浏览(165)

我尝试计算不包括周末的某个范围之间的天数。我现在得到的代码只排除了星期六,但不排除星期日。例如,当开始和结束日期为2022年9月24日时,我的代码返回1而不是0(星期六)和2022年9月25日(星期日)。同样,2022年9月25日(星期日)和2022年9月26日(星期一)应返回1,但返回2。
下面是我的代码:

String method(String start, String end) {
  int a = 1;
  DateTime startDate = DateTime.parse(start);
  DateTime endDate = DateTime.parse(end);

  while (startDate.isBefore(endDate)) {
    startDate = startDate.add(const Duration(days: 1));
    if (startDate.weekday != DateTime.saturday &&
        startDate.weekday != DateTime.sunday) {
      a++;
    }
  }
  print('COUNT: $start :: $end $a');
  return a.toString();
}

任何帮助都将不胜感激!

brccelvz

brccelvz1#

您没有注意到a!您已经初始化了a = 1,但在本例中它必须是0。因此它总是多返回一天。

相关问题