看板 EZsoft 關於我們 聯絡資訊
英文維基上的Solid compression(結實壓縮)條目 http://en.wikipedia.org/wiki/Solid_compression 把多個檔案壓縮成一個壓縮檔的時候 需要做壓縮及打包2個動作 不使用結實壓縮時 是先把檔案各別壓縮好 再打包成一個壓縮檔 使用結實壓縮時 則是把檔案先接成一筆資料 再進行壓縮 原po的問題確實和結實壓縮有關 舉例來說 假設壓縮某個3MB的檔案 壓出來的檔案大小是1MB 把這個檔案複製成2個 進行壓縮結果會如何? 1.不使用結實壓縮時 2個檔案分別壓縮 再打包成一個壓縮檔 所以壓縮檔的大小是1+1=2MB 2.使用結實壓縮時 2個檔案先接成1筆資料 因為是2個一模一樣的檔案 所以接起來的這筆資料所含的資訊量 和1個檔案所含的資訊量是一樣的 因此壓縮後的檔案大小會是1MB 至於相同的大檔使用結實壓縮沒有變小 應該是考量到效能的問題 所以沒去做檢查 以WinRAR來說 在壓縮檔案的畫面 切到Advanced分頁 有個"Compression..."的按鈕 裡面可以設定Directory Size 最大就只能設定到4096kb 所以你的檔案超過4MB時 使用結實壓縮就沒效果了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.134.219.121
Hevak:第二點的說法不對,那個跟演算方式有關 11/14 21:38
Hevak:結實的效用主要是針對非常大量的零碎小型檔案 11/14 21:39
我說的是理論 實際上當然還是要看演算法怎麼設計 顯然無論是rar還是7z 即使使用了結實壓縮 實際上還是會把資料分成相同大小的區塊 再進行壓縮 rar的部份就是上面說的Directory Size 7z則是叫做結實區塊大小 所以要享受到結實壓縮的好處 檔案就要比這個區塊還小才行 7z的結實區塊大小可以設定到很大 所以壓大檔一樣有效果 ※ 編輯: Kenqr 來自: 220.134.219.121 (11/14 21:55)
rick65134:原來winrar預設的Directory Size(中文:參照索引大小)是 11/14 21:53
rick65134:4096KB喔 難怪我怎麼壓都不對 不過我剛剛用copy /B 的方 11/14 21:54
rick65134:式合併兩個一樣的檔案 也有類似的情形 應該也是因為搜索 11/14 21:56
rick65134:範圍只有4096KB 所以超過的範圍就無法比較是否相同了 11/14 21:56
y3k:原來是先Solid再壓縮XD 11/15 11:39