テストフォルダに3つの異なるファイルを保持することにより、以下に示すようなアイデアを実装しました
public class FileCountLine {
public static void main(String[] args) throws FileNotFoundException {
Map<String, Integer> result = new HashMap<String, Integer>();
File directory = new File("C:/Test/");
File[] files = directory.listFiles();
for (File file : files) {
if (file.isFile()) {
Scanner scanner = new Scanner(new FileReader(file));
int lineCount = 0;
try {
for (lineCount = 0; scanner.nextLine() != null; lineCount++);
} catch (NoSuchElementException e) {
result.put(file.getName(), lineCount);
}
}}
System.out.println(result);
}}
しかし、出力としての結果は、以下に示すように、コードの行数をカウントしているファイルがすべて1行になっていることを示しています。
{ValidateWagRewardsRedemptionOptionPPI.java=73, IWalgreensRewardsPosLogSupport.java=134, WagEnrollmentInfoLine.java=111}
結果を以下に示すような出力形式にするようにアドバイスしてください
WalgreensRewardsPosLogSupport.java=134,
WagEnrollmentInfoLine.java=111,
ValidateRewardsAARPManualEntryPPI.java=67
つまり、新しい行自体の各ファイルです。そのために必要な変更を行う必要があるかどうかをアドバイスしてください。