開発 へ戻る
Punycode 変換 — 国際化ドメイン名 (IDN) ⇄ xn--

Punycode 変換 — 国際化ドメイン名 (IDN) ⇄ xn--

日本語ドメインや絵文字ドメインなどの国際化ドメイン名 (IDN) と Punycode (xn-- 形式) を相互変換します。1 行 1 ドメインで複数まとめて変換可能。punycode.js でブラウザ内処理。

開発URL変換

使い方

変換方向 (Unicode → Punycode / Punycode → Unicode) を選び、入力欄に 1 行 1 ドメインで貼り付けて「変換」を押します。「日本語.jp」のような国際化ドメイン名 (IDN) は xn-- 形式に、「xn--wgv71a119e.jp」のような Punycode は元の Unicode に変換されます。ドット区切りのラベル単位で処理するため、ASCII だけのラベル (.jp や example など) はそのまま残ります。複数行をまとめて変換でき、空行は保持されます。結果はコピー / .txt としてダウンロード可能。すべてブラウザ内 (punycode.js) で処理されます。

よくある質問

入力データはサーバーに送信されますか?
いいえ。変換はすべてブラウザ内の JavaScript (punycode.js) で行われるため、ドメイン名は端末から出ません。
Punycode (xn--) とは何ですか?
Punycode は、Unicode のドメイン名 (国際化ドメイン名 / IDN) を、DNS が扱える ASCII 文字 (a-z, 0-9, -) だけで表現するための符号化方式です (RFC 3492)。各ラベルに xn-- というプレフィックスを付け、その後ろに Unicode をエンコードした文字列が続きます。例: 日本語.jp → xn--wgv71a119e.jp。
日本語ドメインや絵文字ドメインも変換できますか?
はい。漢字・ひらがな・カタカナ・アクセント付きラテン文字 (münchen)・絵文字 (☃ や 😀) など、Unicode で表せるラベルはすべて Punycode に変換でき、逆変換で元に戻せます。
ラベルとは何ですか? ドメイン全体を入れてよいですか?
ドメインはドット (.) で区切られた「ラベル」の連なりです (例: 日本語.example.jp は 3 ラベル)。ドメイン全体を入れて構いません。変換はラベルごとに行われ、すでに ASCII のラベルや、Punycode でないラベルはそのまま残ります。
大文字小文字や正規化 (NFC など) は行われますか?
このツールは punycode.js の素の toASCII / toUnicode を使うため、IDNA で規定される完全な正規化 (大文字小文字の畳み込みや NFC 正規化、UTS-46 マッピング) は行いません。厳密な IDNA 準拠が必要な場合は、入力側であらかじめ正規化してください。
「?」が出るのはなぜですか?
Punycode → Unicode で、xn-- の後ろが正しくデコードできない不正な Punycode を入力すると、その行は変換できず「?」になりエラー件数にカウントされます。xn-- のスペルや余分なハイフンを確認してください。

類似のツール

URL エンコード / デコード — クエリ文字列を安全に

URL エンコード / デコード — クエリ文字列を安全に

テキストと %XX 形式の URL エンコード文字列を相互変換します。encodeURIComponent / encodeURI (decode 側も同様) を切替可能。UTF-8 ベースでブラウザ内処理。

開発URLエンコードデコード
URL パース — ホスト / パス / クエリ / fragment

URL パース — ホスト / パス / クエリ / fragment

URL をブラウザ標準の URL クラスで protocol / host / port / path / query / hash などに分解し、クエリパラメータも自動で表に展開します。値はパーセントデコード後で表示。各パーツのコピーや、結果全体の JSON ダウンロードに対応。すべてブラウザ内で処理し、URL は外部に送信されません。

開発URL
Base32 / Base58 エンコード・デコード

Base32 / Base58 エンコード・デコード

テキストを Base32 (RFC 4648 / TOTP 2FA シークレット) と Base58 (Bitcoin アドレス) で相互変換します。方式 (Base32 / Base58) と方向 (エンコード / デコード) を切り替え可能。UTF-8 バイト列ベースで日本語・絵文字も往復。すべてブラウザ内で処理されます。

開発変換エンコードデコード
テキスト ⇄ 2進数 変換

テキスト ⇄ 2進数 変換

テキストと 2進数 (バイナリ) を相互変換します。Mode 切替で「文字 → 2進数」「2進数 → 文字」を選択。文字は UTF-8 でバイト列に変換し、各バイトを 8 ビットのゼロ埋め 2進数で表現します (絵文字や日本語も複数バイトで正しく変換)。区切りスペースの有無を Option で切替可能、デコード時はスペースや改行を無視して 8 ビットずつ解釈します。すべてブラウザ内で処理され、入力はサーバーに送信されません。

開発変換エンコードデコード