0

2つのファイル/フォルダを比較して、どちらかが変更されているかどうかを確認する関数を作成したいと思います。

ファイルに追加/削除または変更されたものがある場合、それはそれらの1つでいくつかの変更が発生したことを意味します。したがって、関数は、提供されたファイルが同一ではないことを返します。これは簡単です。

難しい部分(フォルダの場合):同じ素材の2つのフォルダがあるかどうかを確認したいと思います。例えば:

フォルダー1:

  • testfolder(内部にa.txtがあります)
  • testfile.txt
  • testfile2.txt

フォルダー2:

  • testfolder(そのa.txtのテキストは他のものとは異なります)-変更されました
  • testfile.txt(同じ)-変更なし
  • testfile2.txt(同じ)-変更なし

出力:関数は、これら2つのフォルダー(フォルダー1と2)が同じではないことを返します。(フォルダー2内のtestfolderには、フォルダー1内のtestfolder内のファイルと同一ではないファイルがあるため)

どうすればそのようなコントロールを作成できますか?最善のアプローチは何ですか?すべてのフォルダで再帰検索を実行し、すべてのファイルを1つずつ確認する必要がありますか?(希望しない)ファイルなどのフォルダー用のMD5コントロールはありますか?私は何をすべきか?

4

1 に答える 1

1

フォルダを再帰的に比較する必要があると思います。これは難しいことではありません。

この質問で書かれたように、ファイル比較の最良のアプローチはバイト間の比較です。この記事では、その方法を説明します。

于 2013-01-12T18:44:19.770 に答える