2013-01-12 52 views
0

我想寫一個功能,比較兩個文件/文件夾檢查是否有一個被更改。文件夾/文件比較

如果在文件中添加/刪除或更改了某些內容,則表示在其中一個文件中發生了某些更改。所以函數返回提供的文件不相同。這個很簡單。

困難的部分(如果它是一個文件夾):我想檢查兩個文件夾是否有相同的材料。例如:

文件夾1:

  • testfolder(已經A.TXT內部)
  • TESTFILE.TXT
  • testfile2.txt

文件夾2:

  • testfolder(其A.TXT有不同的文字比其他一個) - 改變
  • TESTFILE.TXT(同) - 沒有變化
  • testfile2.txt(同) - 沒有變化

輸出:函數返回這兩個文件夾(文件夾1和2)不相同。 (因爲testfolder文件夾2有一個文件,是不是等同於testfolder的文件,該文件是內部文件夾1

如何創建這樣的控制,什麼是最好的方法呢?我應該在所有文件夾中進行遞歸搜索並逐一檢查所有文件嗎? (不希望)是否有像文件一樣的文件夾的MD5控件?我該怎麼辦?

+1

你必須在我看來,使用[FileSystemWatcher類] 2種選擇(http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx)或[同步框架(HTTP: //msdn.microsoft.com/en-us/sync/default.aspx) – MethodMan

回答

1

我認爲你應該做文件夾的遞歸比較。這應該不難。

正如在question中所寫的那樣,文件比較的最佳方法是逐字節比較。這article顯示如何做到這一點。