Javaで 2 つのファイルの内容を比較の方法

Java の FileInputStream と BufferedReader クラスを利用すれば、2 つのファイルの中身を読み込んで比較することができます。以下にサンプルコードを示します。

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;

public class FileComparator {
    public static void main(String[] args) {
        String file1 = "file1.txt";
        String file2 = "file2.txt";
        
        try {
            // 读取第一个文件的内容
            BufferedReader reader1 = new BufferedReader(new InputStreamReader(new FileInputStream(file1)));
            StringBuilder content1 = new StringBuilder();
            String line1;
            while ((line1 = reader1.readLine()) != null) {
                content1.append(line1);
            }
            reader1.close();
            
            // 读取第二个文件的内容
            BufferedReader reader2 = new BufferedReader(new InputStreamReader(new FileInputStream(file2)));
            StringBuilder content2 = new StringBuilder();
            String line2;
            while ((line2 = reader2.readLine()) != null) {
                content2.append(line2);
            }
            reader2.close();
            
            // 比较两个文件的内容
            if (content1.toString().equals(content2.toString())) {
                System.out.println("两个文件内容相同");
            } else {
                System.out.println("两个文件内容不同");
            }
            
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

FileInputStreamとBufferedReaderを使用して2つのファイルの内容を読み込み、各行の内容をStringBuilderに追加し、2つのStringBuilderオブジェクトの内容が等しいかどうかを比較します。等しい場合は「2つのファイルの内容は一緒です」と出力し、それ以外の場合は「2つのファイルの内容は違います」と出力します。

bannerAds