テストファイル

壊れたファイルのサンプル

わざと壊したテスト用ファイル無料ダウンロードできます。 マジックバイト(ファイルシグネチャ)破損・拡張子偽装・途中切れ・文字化けの 4 種。 アップロードのバリデーションやエラー処理が異常系を正しくはじけるかを確かめるためのものです。 何がどう壊れているかは、各ページに明記しています。

マジックバイト(ファイルシグネチャ)早見表

ファイルの形式は、拡張子ではなく先頭の数バイト(マジックバイト)で判定するのが安全です。 主要フォーマットの正しい署名は次のとおり。この一覧と食い違うファイルは、形式を偽っているか壊れています。

形式先頭バイト(16進)ASCII
PNG89 50 4E 47 0D 0A 1A 0A‰PNG␍␊␚␊
JPEGFF D8 FF(なし)
GIF47 49 46 38 39 61GIF89a
PDF25 50 44 46 2D%PDF-
ZIP50 4B 03 04PK␃␄
WebP52 49 46 46 … 57 45 42 50RIFF…WEBP

文字化けした CSV は「壊れている」ように見えても、バイトは無傷で読み方を間違えているだけの ことが多く、文字化け修復ツールで元に戻せます。 形式そのものが正しいかは 文字コード別 CSV と併せてどうぞ。

よくある質問

壊れたファイルのサンプルはどこで無料ダウンロードできますか?

このページから、マジックバイト破損・拡張子偽装・途中切れ・文字化けCSVの4種のサンプルを無料でダウンロードできます。すべて決定論的に生成しており、何が壊れているかを明記しています。アップロードのバリデーションやエラー処理のテストに使えます。

なぜわざと壊れたファイルでテストするのですか?

正常なファイルだけでは、異常系(壊れた入力)の処理が正しいか確かめられません。壊れたPNGをアップロードしたときに適切にエラーを返せるか、拡張子を信じて中身を検証していないか——こうしたバグは、壊れたファイルを1つ流すだけで見つかります。

PNGやPDFのマジックバイト(ファイルシグネチャ)は何ですか?

ファイル先頭の数バイトで形式を示す署名です。PNGは 89 50 4E 47 0D 0A 1A 0A、PDFは 25 50 44 46 2D(%PDF-)、ZIPは 50 4B 03 04(PK)、JPEGは FF D8 FF。拡張子ではなくこの署名で形式を判定するのが安全です。