判定するファイルを選ぶ
どんなファイルでも選べます。読み込むのは先頭 4KB のみ — アップロードはしません。
このツールでできること
ほとんどのファイル形式は、ファイル名や拡張子が何を名乗っていようと、先頭に決まったバイト列(「マジックバイト」と呼ばれます)を持っています。このツールはファイルの先頭 4KB だけを読み込み、既知のシグネチャ一覧と照合して、実際に何であるかを報告します。
一番の狙いは食い違いの発見です。「report.txt」という名前なのに中身は PNG 画像だった、「.jpg」なのに実は ZIP アーカイブだった、といったケースを見つけます。バイナリのシグネチャに一致しない場合は、内容が UTF-8 または Shift_JIS のテキストとしてデコードできるかを確認し、JSON・CSV/TSV・HTML・XML・SVG のいずれに見えるかを報告します。
ファイルが端末から出ない理由
ここでのプライバシーは約束ではなく仕組みです。送信先のサーバーが存在しないため、アップロードという工程がそもそもありません。
- 読み込むのはファイルの先頭 4KB だけです。ファイル全体を読み込むことはありません。
- 判定はすべてブラウザ内で実行されます。
- ページは静的ファイルとして配信され、ファイルのデータを伴うリクエストは送信しません。
- ソースは公開されており、誰でも読めます(MIT)。
- オフラインで動作します。これは、データが端末から出ないからこそ可能です。
ご自分で確かめるなら、判定中にブラウザの Network パネルを開いてください。データを運ぶリクエストは出ていません。 ソースを読む。
使い方
-
ファイルを選ぶ
クリックしてファイルを選択するか、ページ上にドロップします。一度に判定できるのは1ファイルです。
-
結果を確認する
検出された形式・MIME タイプ・一般的な拡張子を確認します。テキストの場合は文字コードと内容の種類が表示されます。
-
警告に注意する
ファイル自体の拡張子が検出された形式と食い違っている場合、その警告が最初に表示されます。
よくある質問
ファイルはどこかにアップロードされますか?
いいえ。読み込むのは先頭 4KB だけで、判定はすべてブラウザ内で完結します。サーバー側の処理が無いため、ファイルが端末の外に出る経路がありません。ソースは公開されており、ブラウザの Network パネルで確認できます。
「マジックバイト」とは何ですか?
ほとんどのファイル形式は、決まった認識可能なバイト列(ファイルシグネチャとも呼ばれます)から始まります。例えば PNG ファイルは常に同じ 8 バイトで始まり、ZIP アーカイブは「PK\x03\x04」で始まります。このツールはファイルの先頭バイトを既知のシグネチャ一覧(magic-bytes.js)と照合し、ファイル名に関係なく実際の形式を報告します。
複数の形式の可能性があると表示されるのはなぜですか?
ZIP・JAR・DOCX・XLSX・PPTX・ODT・APK など、ZIP をベースにした形式は先頭数バイトがまったく同じです。これらを見分けるには通常アーカイブ内部の central directory を確認する必要がありますが、それはこのツールが読む先頭 4KB の外にあることが多いため、推測せずシグネチャを共有するすべての形式を列挙します。
既知のバイナリ形式でない場合はどうなりますか?
バイナリのシグネチャに一致しない場合、先頭 4KB を UTF-8 テキストとしてデコードを試み、失敗すれば Shift_JIS を試します。成功すれば、内容が JSON・CSV/TSV・HTML・XML/SVG・プレーンテキストのいずれに見えるかを報告します。どちらのデコードも失敗した場合は「不明なバイナリデータ」と報告します — 既知の形式にも一致せず、有効なテキストでもないということです。
ファイルを変換したり開いたりできますか?
いいえ。このツールは判定するだけで、変換・展開・中身の表示は行いません。該当する runlocally のツール(ZIP Viewer、CSV Viewer、Hex Viewer など)が存在する場合は、結果からそこへリンクします。
オフラインでも使えますか?
はい。PWA なので、一度アクセスすればキャッシュされ、ネット接続が無くても判定できます。ホーム画面に追加して、アプリのように使うこともできます。