私はこのコードhttp://support.microsoft.com/kb/320348に遭遇し、2つのファイルを比較してそれらが異なるかどうかを調べる最良の方法が何か不思議に思っていました。ファイルをバイトごとに比較するか、すべてのバイトを読み取るか?
主な考え方は、変更されたファイルや削除/作成するファイルのリストを作成するためにファイルが等しいかどうかを確認する必要があるプログラムを最適化することです。
現在、私はファイルのサイズを比較しています。一致すると、2つのファイルのmd5チェックサムに入りますが、この質問の先頭にリンクされているコードを見て、それは2つのファイルのチェックサムを作成する上でそれを使用する(これは基本的にすべてのバイトを取得した後です)?
また、各ファイルをチェックする際の作業を減らすために、他にどのような検証を行う必要がありますか?
私はこれがあなたが何を意味するかに大きく依存すると思います。ファイル内のテキストの等価性や実際のバイト数をテストしますか?ファイルの内容は何ですか?スペースは重要です(テキストの平等)? MD5チェックサムは、行の最後に2つの空白と1つの空白の間の差分があります。単純なテキスト比較ではそうではありません。 – linuxuser27
MD5では、両方のファイルを完全に読み取ってからハッシュを実行する必要があり、大きなファイルの場合は時間がかかることがあります。 – Aliostad
だから私はその質問について疑問に思っていた。AliostadとAnonは私が知りたいと思った点を作った。 – Prix