读取文件-while循环不更新if语句

hmtdttj4  于 2021-07-07  发布在  Java
关注(0)|答案(0)|浏览(134)

如果能在这个问题上得到任何帮助,我将不胜感激。我正在尝试读取.csv/text文件的所有行,其中:;如果满足特定条件,则返回某些函数。我遇到的问题是if语句似乎没有在每个while循环的末尾更新。它被封装在for循环中。请看下面:
因此for循环在两个输入的日期之间迭代;例如,列出2020年11月20日和2020年11月28日之间的所有日期。while循环应该遍历每个for循环输出-但是最终发生的是while循环不会在for循环迭代时更新if语句中的“字符串”;这导致while循环多次迭代第一个日期,而不是遍历所有日期。
提前谢谢!!!

  1. try {
  2. Date d_from = new SimpleDateFormat("M-dd-yyyy").parse(from);
  3. Date d_to = new SimpleDateFormat("M-dd-yyyy").parse(to);
  4. //System.out.println(d_from.getTime());
  5. long t1 = d_from.getTime();
  6. long t2 = d_to.getTime();
  7. SimpleDateFormat f = new SimpleDateFormat("M-dd-yyyy");
  8. BufferedReader br = new BufferedReader(new FileReader(dp));
  9. String read = br.readLine();
  10. if (t1 < t2) {
  11. for (long i = t1; i <= t2; i += 86_400_000) {
  12. String datedash = f.format(i);
  13. String dateslash = datedash.replace("-", "/");
  14. String datedot = datedash.replace("-", ".");
  15. while (read != null) {
  16. if (read.contains(dateslash)) {
  17. System.out.println(read);
  18. }
  19. read = br.readLine();
  20. System.out.println(dateslash);
  21. }
  22. dateslash = f.format(i).replace("-", "/");
  23. }
  24. br.close();
  25. }
  26. }
  27. catch (Exception ex) {
  28. ex.printStackTrace();
  29. }

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题