0

2 つのクラス フィールドがあり、1 つは CSVUtils.java という名前で、もう 1 つは FilesCollector.java という名前です。CSVUtils.java には、FilesCollector.java によって呼び出される matchValues(String csvFile, int columnNumber, String matchValue) という名前の静的メソッドが含まれています。基本的にはこんな感じ

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); 私のコードは機能しています。このコード行でメソッドが機能しないのはなぜですか?

4

2 に答える 2