HTML エンティティエンコードツール
HTMLエンティティ文字をオンライン変換、エンコード・デコード対応、XSS攻撃を効果的に防止
変換方法を選択
HTMLエンティティエンコードとは?
HTMLエンティティエンコードは、特殊文字をHTMLエンティティ参照に変換するメカニズムです。HTMLでは、特定の文字が特別な意味を持つ(<、>、&など)。これらの文字をページに表示するには、エンティティエンコードを使用する必要があります。エンティティエンコードには2つの形式があります:名前付きエンティティ(<など)と数値エンティティ(<など)。名前付きエンティティは読みやすく、数値エンティティは任意のUnicode文字を表現できます。
HTMLエンティティエンコードの主な用途
- XSS攻撃防止: ユーザー入力の特殊文字をエスケープし、悪意あるスクリプト注入を防止
- 特殊文字の表示: HTMLで < > & " ' などの予約文字を表示
- 国際化サポート: 数値エンティティを使用して様々な言語の特殊文字を表示
- コード表示: Webページで安全にHTMLコードを表示
使用方法
基本操作
- 左側の入力ボックスに変換するテキストを入力または貼り付け
- 対応する変換ボタンをクリックしてエンコードまたはデコード方法を選択
- 右側に変換結果が自動表示
- 「コピー」ボタンで結果をクリップボードにコピー
変換方法説明
- HTML エンティティエンコード: < > & " ' を名前付きエンティティに変換、XSS防止に適しています
- HTML エンティティデコード: 名前付きエンティティを元の文字に復元
- 数値エンティティエンコード: 特殊文字を数値エンティティ形式に変換(<など)
- 完全エンコード: すべての非ASCII文字をエンコード、国際化シーンに適しています
- 完全デコード: すべての形式のHTMLエンティティを復元
ショートカット
Ctrl + E- HTMLエンティティエンコードCtrl + D- HTMLエンティティデコード
よく使うHTMLエンティティ文字表
| 文字 | 名前付きエンティティ | 数値エンティティ | 説明 |
|---|---|---|---|
| < | < | < | 小なり記号 |
| > | > | > | 大なり記号 |
| & | & | & | アンパサンド |
| " | " | " | ダブルクォート |
| ' | ' | ' | シングルクォート |
| 空白 | |   | ノーブレークスペース |
| © | © | © | コピーライト記号 |
| ® | ® | ® | 登録商標 |
| ™ | ™ | ™ | 商標記号 |
| € | € | € | ユーロ記号 |
| ¥ | ¥ | ¥ | 円記号 |
よくある質問 (FAQ)
Q: HTMLエンティティエンコードとURLエンコードの違いは?
A: HTMLエンティティエンコードはHTML文書で使用し、特殊文字を&xxx;または&#xxx;形式に変換;URLエンコードはURLで使用し、特殊文字を%XX形式に変換。両者は用途が異なり、HTMLエンコードはページ内容、URLエンコードはリンクアドレスに使用します。
Q: エンコード後に & が & と表示されるのはなぜ?
A: & はエンティティエンコードのプレフィックスそのものなので、エンコード時に先に処理する必要があります。最初のエンコードで & は & になります。これは正しい動作です。デコード時に & が & に復元されます。
Q: 名前付きエンティティと数値エンティティはどちらが良いですか?
A: 名前付きエンティティ(<など)は読みやすくメンテナンスしやすい;数値エンティティ(<など)は任意のUnicode文字を表現でき、互換性が良い。よく使う文字には名前付き、特殊文字には数値をお勧めします。
Q: XSS攻撃を防ぐには?
A: ユーザー入力の内容をHTMLページに出力する前に、HTMLエンティティエンコードで < > & " ' などの文字をエスケープします。これにより、ユーザーが悪意あるスクリプトを入力しても、普通のテキストとして表示され、実行されません。
Q: データは安全ですか?
A: 完全に安全です。本ツールのすべての処理はブラウザでローカル完了し、データはサーバーにアップロードされません。データは常にデバイス上に残ります。