2014-01-17 68 views
0

我寫了一個代碼用minizip在zip中刪除文件。用minizip刪除和修改zip文件

引用http://www.winimage.com/zLibDll/del.cpp

我不得不刪除和修改文件和ZIP頻繁。

使用的zip文件是1.6 GB。

刪除文件和ZIP意味着

  1. 複製整個壓縮文件除了要刪除的文件到新的zip文件
  2. 刪除舊的zip文件。
  3. 將新的zip文件重命名爲舊的zip文件。

太慢,刪除和修改(刪除和添加)。

我該如何更快地刪除和修改zip文件?

有什麼想法嗎?

+0

zlib標籤在這裏是錯誤的。它指的是一個特定的壓縮庫,特別是一個不使用zip的壓縮庫。請刪除zlib標籤。 –

+0

基於zlib的minizip – user2523112

回答

1

你可以編寫自己的代碼來刪除一個zip文件。這有點冒險,因爲如果出現問題或系統在操作過程中出現故障,您將丟失文件。你目前的方法,複製壓縮文件,確保你總是有一個好的壓縮文件可用,如果南下。

.ZIP File Format Specification提供了編寫自己的刪除程序所需的全部信息。壓縮文件的結構相對簡單,但需要注意細節才能解決所有可能的問題。

刪除操作仍然需要複製所有刪除條目後面的zip文件內容。

這樣做之後,就地添加一個文件將會相對較快,因爲它只是在最後,並且中心目錄被重寫。如果刪除和添加是相同的文件或文件,那麼它們自然會在最後結束,就地操作應該比複製整個zip文件更快。

相關問題