DevToys Web Pro iconDevToys Web Proブログ
評価:
ブラウザ拡張機能を試す:

Bzip2 解凍ツール

入力形式:
Base64 入力
  • または .bz2 ファイルをドロップ

    展開後の出力
  • Bzip2 について

    Bzip2 は、Burrows-Wheeler のブロックソートアルゴリズムの後にハフマン符号化を行い、速度が遅くメモリ使用量が増える代わりに、gzip より高い圧縮率を実現します。

    • Linux/macOS で単一ファイル圧縮(拡張子 .bz2)として一般的
    • 一般的な圧縮: gzip より 10〜15% 高い圧縮率
    • CLI で圧縮: bzip2 file.txt
    • CLI で展開: bunzip2 file.txt.bz2
    • tar と組み合わせることが多い: tar -xjf archive.tar.bz2

    すべての処理はブラウザ内で行われ、データは一切サーバーに送信されません。

    技術的な詳細

    Bzip2デコンプレッサの仕組み

    このツールでできること

    Bzip2デコンプレッサは、.bz2で圧縮されたファイルをブラウザ内だけで完全にデコードし、元の非圧縮コンテンツを生成します。サーバー側の処理なしに、Burrows-Wheeler TransformとHuffman符号化の伸長パイプラインをJavaScriptで実装しています。これはデコード専用ツールです。bzip2データを伸長しますが、新しいbzip2アーカイブは作成しません。

    開発者によくある利用シーン

    開発者は、コマンドラインツールをインストールせずに、bzip2で圧縮されたログファイル、データベースダンプ、ソースアーカイブを素早く確認するためにこのツールを使います。bzip2が事前にインストールされていない環境(Windows、最小構成のコンテナ)で作業するとき、パッケージリポジトリからダウンロードした.bz2ファイルの中身を覗きたいとき、またはターミナルに触れずに同僚から受け取った単一ファイルを伸長したいときに便利です。

    データ形式、型、またはバリエーション

    Bzip2は、Burrows-Wheeler Transform(BWT)、Move-to-Frontエンコーディング、Huffman符号化のパイプラインを用いて圧縮を行い、速度が遅くなる代わりに、一般的にgzipより10〜15%良い圧縮率を実現します。ファイルは.bz2拡張子を使用し、マジックバイト'BZ'で始まり、その後にバージョン指標が続きます。ブロックサイズは100k〜900k(ヘッダー内の数字1〜9で示され)で、ブロックが大きいほど圧縮は良くなりますが、伸長にはより多くのメモリが必要です。

    よくある落とし穴とエッジケース

    Bzip2はgzipほどきれいにストリーミング伸長をサポートしていません。出力が生成される前にブロック全体を読み込む必要があるため、非常に大きなファイルではブラウザメモリを大きく消費する可能性があります。マルチストリームbzip2ファイル(並列圧縮のためにpbzip2が作成)は、連結されたbzip2ストリームを含み、一部のデコーダが誤って処理することがあります。このツールは標準的な単一ストリームの.bz2ファイルを扱います。.tar.bz2アーカイブの場合は、生のtarコンテンツが得られますが、別途展開が必要です。

    コードではなくこのツールを使うべき場面

    bzip2ユーティリティをインストールせずにファイル内容を覗きたいときの、素早い単発の伸長にはこのブラウザツールを使ってください。パイプラインでのスクリプト伸長、複数アーカイブのバッチ処理、または展開が必要な.tar.bz2ファイルの取り扱いには、コマンドラインのbzip2/pbzip2や、ストリーミングをサポートしてtar展開と統合できるPythonのbz2モジュールのような言語ライブラリを使用してください。