0

チェックサムを計算して他のファイルと比較し、重複ファイルを見つけますが、オフィス ファイルの場合、共有ポイントのプロパティが含まれます。たとえば、場所が異なるファイルのチェックサムは同じではありません。

私の考えは、このファイルをメモリストリームで開き、xml (ワード word/document.xml) を解凍し、それを使用してチェックサムを計算するか、zip ライブラリの crc プロパティを使用することです。このようにして、ドキュメントのプロパティは含めず、コンテンツ (一部) のみを含めます

うまく機能しますが、ExcelまたはPowerPointの場合、ドキュメントのコンテンツを表すフォルダーにいくつかのファイルがあります。

まず、それが正しい方法だと思いますか。次に、ファイルの crc プロパティを組み合わせて、コンテンツ フォルダーを表す CRC を作成する方法を教えてください。

word の場合 /word
Excel の場合 /xl/worksheets
パワーポイントの場合 ppt/slides

4

1 に答える 1

0

ファイルに CRC ハッシュを使用する (sharepoint メタデータを削除する) のが適切と思われます。CRC が、インデックスを作成するファイルの数に基づいて統計的に一意のハッシュを提供するのに十分な長さである限り。

それらを組み合わせてフォルダ ベースの CRC を作成しようとしているのはなぜですか? それらをどのように組み合わせる予定ですか?フォルダー値の CRC を合計することだけを考えている場合、それが一意であるとは限りません。

CRCをキーとして辞書を作成し、検索/比較にDictionary.ContainsKeyを使用する方が良いと思います

またはDictionary.Addキャッチ ArgumentExcptionsを介して重複するエントリを監視します(キーは既に存在します)

于 2013-10-14T18:39:08.410 に答える