用語集

RARファイルの非圧縮サイズとは何ですか?

非圧縮サイズ とは、RAR アーカイブからファイルを展開した後のファイルのサイズのことです。この数値がどこから来ていて、何を示しているのかを確認してください。

uncompressed-size

非圧縮サイズとは、アーカイブから展開(解凍)した後のファイルのサイズのことです。RARアーカイブは、含まれている各ファイルについてこの数値を保存します。

非圧縮サイズのほかに、アーカイブには圧縮サイズも保存されます。これはファイルがアーカイブ内で占める容量です。ZIPアーカイブも同様の数値を保存し、メタデータリーダーのExifToolはこれを ZipUncompressedSize として表示します。詳しくは ZIP 非圧縮サイズ の記事をご覧ください。

どのファイルがそれを持っているか

非圧縮サイズは、古いRAR 4.x形式と新しいRAR 5.0形式の両方のRARアーカイブに含まれます。アーカイブ内の各ファイルには独自のヘッダーがあり、そのヘッダーにファイルの展開後のサイズが保存されます。

同じヘッダーには、アーカイブ内のファイル名や、アーカイブの作成に使用されたオペレーティングシステムも保存されます。更新日時が保存される場合もあります。各ファイルが独自のヘッダーを持つため、10個のファイルを含むアーカイブには10個の非圧縮サイズの値が含まれることになります。

メタデータ読み取り用プログラムのExifToolは、既定では非圧縮サイズを1つだけ表示します。Duplicatesオプションを使うと、アーカイブ内のすべてのファイルの値が表示されます。

値の由来

アーカイブ作成プログラムは、ファイルをアーカイブに追加する際に、この数値をヘッダーに書き込みます。RAR 5.0では、ヘッダーは展開後のサイズを最大64ビットの可変長整数として保存します。

ヘッダーには、展開後データのCRC32チェックサムを保存することもできます。この項目は任意のため、ファイルヘッダーに含まれない場合もあります。

RAR 5.0アーカイブでは、ファイルの展開後サイズを不明としてマークできる場合があります。その場合、プログラムは保存されている数値を無視し、圧縮データの終わりまで展開を続ける必要があります。ExifToolは、そのようなファイルについては非圧縮サイズを表示しません。

その値がどのように表示されるか

この値は、単位の付かないバイト数の整数です。多くのプログラムはこの数値をより大きな単位に変換しますが、その際のルールはプログラムによって異なります。

  • 1 kB(キロバイト)は1,000バイト、1 MB(メガバイト)は1,000,000バイトです。
  • 1 KiB(キビバイト)は1,024バイト、1 MiB(メビバイト)は1,048,576バイトです。

一部のプログラムはKBやMBと表示しながら、実際には1,024バイトや1,048,576バイトとして扱います。このため、同じファイルでも2つのプログラムで表示サイズが異なることがあります。

それが重要な理由

非圧縮サイズは、アーカイブを展開する前にどれくらいの空きディスク容量が必要かを知る目安になります。アーカイブ内のすべてのファイルの値を合計すると、おおよその合計サイズが分かります。

非圧縮サイズは、アーカイブ自体のファイルサイズとは異なります。ファイルサイズは、RARファイル全体のバイト数です。

非圧縮サイズと圧縮サイズを比較すると、各ファイルでどれだけ圧縮によって容量が削減されたかが分かります。2つの数値がほとんど同じ場合、そのファイルについてはほとんど容量が節約されていないことになります。RAR 4.xアーカイブでは、パッキング方式 Stored はファイルが無圧縮で保存されたことを意味します。

この数値は、あくまでアーカイブが宣言している値です。非常に小さいアーカイブなのに、巨大な非圧縮サイズを示している場合は注意してください。展開時に膨大なデータを生成する、解凍爆弾(zip爆弾)と呼ばれるものの可能性があります。

メタキー