我有两个类字段,一个名为 CSVUtils.java,另一个名为 FilesCollector.java。CSVUtils.java 包含一个名为 matchValues(String csvFile, int columnNumber, String matchValue) 的静态方法,由 FilesCollector.java 调用。基本上是这样的
Public Class CSVUtils {
private static String FILENAME;
private static int COLUMN;
private static String MATCHVALUE;
public static void matchValues(String csvFile, int columnNumber, String matchValue) {
try {
//read csvFile, match values, and write to outPut file. details omitted.
} finally {
csvReader.close();
csvWriter.close();
System.out.println("success");
System.exit(0);
}
}
}
在 FilesCollector.java 中,我使用 Apache Commons-IO 获取 CSV 文件列表并将其存储在数组 File[] csvFiles 中。然后我使用下面的 for 循环来处理单个 csv 文件
for (File e : csvFiles) {
CSVUtils.matchValues(e.getAbsolutePath(), 9, "Yes");
}
但是,出于某种我不知道的原因,上面的这个 for 循环只能处理 File[] csvFiles 数组中的第一个 csv 文件。你们能帮我看看我的代码哪里有问题吗?非常感谢!
编辑:注释掉这一行 System.exit(0); 我的代码正在运行。为什么这行代码使该方法不起作用?