2013-10-14 24 views
0

我計算一個支票金額與其他人進行比較,找到重複的文件,但對於辦公文件,共享點屬性包括在內。因此,例如具有不同位置的文件不具有相同的校驗和。用c查找辦公室重複的文件內容#

我的想法是在內存流中打開這個文件,解壓縮xml文件(用於word word/document.xml),並用它來計算校驗和或使用我的zip庫的crc屬性。通過這種方式,我不包含文檔屬性,但只包含內容(一部分)

它工作正常,但對於Excel或PowerPoint,文件夾中有多個文件來表示文檔的內容。

首先你認爲這是正確的方法。 第二我如何將文件的crc屬性組合成一個代表內容文件夾的CRC。

對於字/詞
對於Excel/XL /工作表
PowerPoint的PPT /幻燈片

回答

0

使用CRC散列文件(剝離的SharePoint元數據)似乎是適當的。只要CRC足夠長,可根據您正在編制索引的文件數提供統計獨特的散列值。

你爲什麼試圖將它們合併爲基於文件夾的CRC?你打算如何組合它們? 如果您正在考慮爲文件夾值合計CRC,我會說這不會保證是唯一的。

我認爲這將是更好地創建一個使用CRC的關鍵一本字典,然後簡單地使用Dictionary.ContainsKey用於查找/比較

或觀看通過Dictionary.Add醒目ArgumentExcptions重複的條目(鍵已經存在)

+0

在辦公室文件中,我認爲內容是由幾個XML文件包含在文件夾中描述的。我想結合crc,因爲我需要將結果存儲在sharepoint屬性字段中我明白它不僅是一筆款項,但我該如何做到這一點? – user1974845

+0

您可以使用一個文件的CRC輸出作爲下一個文件的CRC計算的種子來計算總體CRC。你應該確保文件在計算時的排序方式相同(如果你正在尋找重複的內容,我會建議使用大小)。 –

+0

你能否給我更多的細節來爭取crc? – user1974845