バイナリファイル Hex ビューアー

ファイルのバイトを確認

ステップ形式では、選択したファイルをこのブラウザ内に最長2時間だけ一時保存します。アップロードはしません。

選択した範囲を読み取り中...

表示される種類はブラウザの報告値であり、ファイルシグネチャでは検証していません。

バイト -


            

選択した範囲だけを表示しています。このダンプではファイルの残りを読み取っていません。

hex dump は、ファイルのバイトを3つの列に並べます。左に絶対バイトオフセット、中央に2桁の hex 値、右に可能な範囲の ASCII 表示です。このビューアーは限られた範囲をブラウザ内でローカルに読み取ります。標準では offset 0から64 KiBを表示し、4 KiB、16 KiB、64 KiB、256 KiB、1 MiBから選べます。

この hex dump の読み方

  1. 1

    ファイルを1つドロップ

    バイナリ、テキスト、画像、アーカイブ、実行ファイルなどを使えます。ブラウザが raw bytes として読み取ります。

  2. 2

    表示する範囲を選択

    ファイル内の10進整数の開始 offset を入力し、4 KiB、16 KiB、64 KiB、256 KiB、1 MiBから選びます。0x10 のような入力は受け付けません。末尾では短い範囲で終了します。

  3. 3

    1行16バイトで読む

    各行には8桁の絶対 hex オフセット、最大16個の hex バイト値、右側の ASCII 列が表示されます。

  4. 4

    コピーまたは比較

    表示中の dump をコピーしたり、バイトを既知のシグネチャと比べたりできます。検索や編集、マルチバイト数値の解釈、ファイルのエクスポート、形式の自動判定は行いません。

1行の構造

00000000  89 50 4e 47 0d 0a 1a 0a  00 00 00 0d 49 48 44 52  |.PNG........IHDR|
^offset^  ^--- hex 表記の16バイト ----------------------^  ^-- ASCII ----^
  • オフセット、ファイル内のゼロ始まりの絶対バイト位置を、8桁の hex で示します。
  • hex 値、1行に16バイトを表示し、各バイトは2桁の16進数になります。
  • ASCII 列0x20から0x7Eまでのバイトは ASCII として表示し、それ以外は.で表示します。

よくあるファイルシグネチャ(magic bytes)

magic bytes は手がかりであり、確実な証明ではありません。オフセット0にある場合は特に有用ですが、複数の形式が同じ接頭辞を共有したり、内部に別のファイルを含んだりすることがあります。DOCX、XLSX、JAR、APK などの ZIP ベース形式はいずれも 50 4B 03 04 で始まることがあり、このビューアーは形式を自動判定しません。

バイト (hex) 可能性のある形式の手がかり
89 50 4E 47 0D 0A 1A 0A PNG 画像
FF D8 FF E0 JPEG/JFIF 画像
47 49 46 38 39 61 GIF89a 画像
25 50 44 46 PDF 文書 (%PDF)
50 4B 03 04 ZIP ローカルファイルヘッダー。DOCX、XLSX、JAR、APK でもよく使われます
7F 45 4C 46 ELF 実行ファイルまたはオブジェクトファイル
4D 5A DOS/Windows PE 実行ファイル (MZ)
1F 8B gzip 圧縮データ
42 4D BMP 画像 (BM)
49 49 2A 00 TIFF 画像、little-endian

このビューアーでできること、できないこと

  • ローカルでのバイト読み取り、表示される dump は、選択したファイルからブラウザ内で生成されます。
  • 限られた範囲の確認、有効なバイトオフセットを入力し、そこから最大1 MiBを確認します。dump の作成時にブラウザが読むのはその範囲だけです。
  • MIME とサイズの情報、ブラウザが報告した MIME タイプ、または binary、そしてファイル全体のサイズをバイト単位で表示します。
  • コピー可能な出力、コピー ボタンで、表示中の dump をメモ、チケット、コマンドライン比較に利用できます。
  • 完全な hex editor ではありません、検索、マッチのハイライト、バイト編集、エクスポートのダウンロード、シグネチャ自動判定、16・32・64ビット値の解釈には対応していません。そのため endianness は適用されず、バイトは常にファイル内の順序で表示されます。

表示上限

ファイル選択では空でないファイルを1つ、最大100 MiBまで受け付けますが、hex dump が読み取って表示するのは選択した offset から最大1 MiBです。ブラウザはその Blob/File の範囲だけを ArrayBuffer に変換し、内容をサーバーへ送りません。ステップ形式では、ブラウザ内だけの一時 IndexedDB コピーにより最長2時間ページ間でファイルを利用でき、最初からやり直すと使用中のコピーを削除します。通常の1ページ形式では、選択した File はページメモリだけに保持されます。検索、編集、数値の解釈、自動形式検証には専用の hex editor や形式別パーサーを使用してください。

よくある質問

いいえ。特にオフセット0では有用な証拠になりますが、完全なパーサーではありません。手がかりとして扱い、重要なファイルは形式専用のツールで確認してください。

いいえ。読み取り専用で、選択した範囲だけを表示します。マルチバイト数値も解釈しないため、little-endian や big-endian の設定はありません。編集や型付き値の確認には hex editor を使用してください。

いいえ。dump は arrayBuffer() を使って Blob/File の一部からローカル生成されます。ステップ形式ではこのブラウザに一時保存し、通常形式ではページメモリだけに保持します。

有効な開始 offset を入力し、そこから最大1 MiBを表示できます。検索、マッチのハイライト、dump のエクスポート、ファイル全体の一括読み込みには対応していません。

関連ツール