サイトアイコン CAD日記

zipの限界

zip形式による圧縮には限界がある。
ファイルサイズで4GB、ファイル数で65,536と言われている。
これを超える場合、圧縮はできるものの解凍できないということがある。
使用しているアーカイブソフトによって挙動は変わってくるだろうが、
Windows標準のzip圧縮では間違いなく制限が存在する。
以下、おいらが実際に体験した事実。
圧縮前のファイルサイズが7GBで、ファイル数が247,540。
こんな巨大データをWindows標準のzip圧縮で、圧縮してみた。
結果のzipファイルは4GBを超えていた。
+Lhacaで解凍したところ、解凍後のファイルサイズは4.6GBと減少してしまった。
とくにエラーが出ることなく、正常に終わったように見えるあたり性質が悪い。
zipの圧縮に限界があるということはあまり知られていないわけだが、
これってけっこう大きな問題のような気がしてきた。
そういえば以前、けっこうでかいデータをLZHに圧縮したことがある。
あるときそのデータが必要になり、解凍しようとしたら解凍できなかったことがある。
どうしても必要なデータでなかったことから、原因を追究せずにそのままに
していたが、とても気になる出来事だった。
32ビットアプリケーションで扱える最大の整数は、4,294,967,296。
つまり、4GBを超えるサイズのファイルは扱うことができないのだ。
とはいえ、DVDをリッピングした結果のISOファイルは4.5GBくらいになるわけで、
絶対的に扱えないわけではない。
アプリケーションソフトとして、それなりに工夫しなければいけないのだ。
本当にzipには限界があるのだろうかと本気で調べてみた。
64bit拡張zipというのがあった。
ファイルサイズもファイル数も、実質的には制限がないに等しい。
64bit拡張zipが扱えるアーカイブソフトは少ない。
フリーソフトでは存在しなかった。(もしかたらあるかもしれない)
シェアウェアとしてWinZipがあった。
まだこれほど日本でzipが広まっていなかった頃に、たまにzipファイルで
データが届くことがあり、試用期間で使ったことはあった。
前述の7GBのデータの圧縮解凍を行ってみたところ、
エラーも出ずにファイルサイズもファイル数も見事に復元された。
欲しくなった。
WinZip12 Standard ダウンロード版 5,250円。
いい値段だが、zip圧縮時のトラブルがなくなることを考えると安いものだ。
LZHでの圧縮解凍もできるようだし、何か新しい発見があるかもしれない。
ヨドバシで検索してみたら、同じ値段でダウンロード販売していた。
ヨドバシのポイントもたまっていることだし、これを使えばタダで手に入る。
早速申し込んだところ、ダウンロードサイトのアドレスとシリアル番号が届いた。
ダウンロードしたセットアップファイルは体験版と同じものだった。
シリアル番号をもとに登録することにより、体験版が製品版になる仕組みだ。
無事、登録が完了して、製品版にすることができた。
ダウンロード販売でソフトを購入するのは、ウイルスセキュリティZERO以来か。
いろいろと機能があるようだから、使い込んでみようと思う。
いい買い物をした。

モバイルバージョンを終了