我試圖通過網絡保持文件同步。我不想在每次更改時傳輸整個文件,而是想找到並壓縮更改過的部分,並只傳輸這些文件,非常類似於例如。顛覆。有沒有可靠的C#解決這個問題,還是我必須自己寫?如何通過僅使用跟蹤的更改來壓縮文件?
2
A
回答
0
2
的關鍵詞是 「差異算法」。在C#中有幾個實現。
Diff.NET和A Generic, Reusable Diff Algorithm in C#看起來像合理的選擇。 Google會爲你找到另外幾百個選擇。
請注意,大多數差異算法是專門爲處理基於行的文本文件而設計的。
如果您想要比較二進制數據或行的部分,您需要在挑選差異庫時更加小心。
如果你想壓縮差異,你可以使用System.IO.Compression.GZipStream
類。
+0
是的,它主要是關於二進制文件。鏈接看起來非常好。 – mafu 2011-03-10 13:05:12
1
相關問題
- 1. 如何僅通過部分解壓縮來查看壓縮文件?
- 2. 通過C#使用cmd來壓縮和解壓縮文件
- 3. 如何跟蹤文件上的更改?
- 4. GNU如何跟蹤文件更改?
- 5. 通過Visual Studio跟蹤更改的文件
- 6. 僅壓縮文件
- 7. 如何使用Zend壓縮過濾器壓縮多個文件?
- 8. 通過Java壓縮文件
- 9. 壓縮文件通過PS
- 10. 如何更改使用VBA解壓縮文件的名稱
- 11. 如何跟蹤FLA文件中的更改(通過版本控制)
- 12. 使用Ant來改變我目前使用YUI通過Ant來壓縮JavaScript文件的文件
- 13. 使用更改表跟蹤
- 14. 使用$ watch跟蹤更改
- 15. 通用更改跟蹤類改進
- 16. 僅使用Python壓縮文件
- 17. 如何通過FTP循環來壓縮所有文件?
- 18. 使用rails跟蹤更改 - 「更改?」
- 19. 如何啓用HTTP壓縮來壓縮JSON文件
- 20. SQL Server:如何使用更改跟蹤列出更改的列?
- 21. GoogleMaps API v2 - 僅通過GPS跟蹤
- 22. 如何僅使用PHP壓縮尚未壓縮的圖像?
- 23. 跟蹤更改
- 24. 跟蹤更改
- 25. 跟蹤更改
- 26. 跟蹤更改
- 27. 使用PHP跟蹤文本文件中的更改
- 28. 如何僅使用.gitignore跟蹤特定文件?
- 29. 如何使用jquery跟蹤文本框中的更改
- 30. 最後一天修改過的壓縮/壓縮文件
你可以使用rsync? – DanS 2011-03-10 12:57:17
我不想使用外部程序。 – mafu 2011-03-10 13:00:51