Unicode変換・ユニコードデコードツール
日本語、英数字、絵文字をUnicodeエスケープやコードポイントへ変換し、\uXXXX形式の文字列を元のテキストへデコードできます。ブラウザ内で使える無料のUnicode変換ツールです。
Unicode変換でよく使うエスケープ例
JSONログの\uXXXX文字列をデコードしたいとき、日本語や絵文字をUnicodeエスケープへ変換したいとき、または文字が1つのコードポイントかサロゲートペアかを確認したいときに使えます。
日本語・中国語テキストをUnicodeに変換
- 入力
你好- 出力
\u4F60\u597D
APIログで非ASCII文字がJSON escapeとして保存されている場合の確認に便利です。
Emojiのコードポイント
- 入力
😊- 出力
\uD83D\uDE0A
Emojiは基本多言語面の外にあることが多く、2つのサロゲートに分けるよりコードポイント形式の方が確認しやすいです。
Unicodeエスケープを文字にデコード
- 入力
\u4F60\u597D- 出力
你好
ログからコピーしたエスケープ文字列を人が読める文字へ戻してから、元データを修正すべきか判断できます。
混在したAPIメッセージ
- 入力
status=成功 ✅- 出力
\u0073\u0074\u0061\u0074\u0075\u0073\u003D\u6210\u529F\u0020\u2705
Webhook、ローカライズファイル、APIエラー文ではASCII、CJK、記号が混在しがちです。
Unicode変換・デコードの確認ポイント
- デコード後もバックスラッシュが残る場合、文字列が二重にエスケープされている可能性があります。
- emojiが2つの壊れた文字になる場合、元のシステムがサロゲートペアを分割して扱っています。
- JSONの解析に失敗する場合、各エスケープが4桁の16進数か、U+1F60A のようなコードポイント表記かを確認してください。
- ブラウザ表示とデータベース出力が違う場合、まずUnicodeコードポイントを比較し、その後UTF-8保存と照合順序を確認してください。
よくある質問
Unicodeとは何ですか?
Unicodeは、日本語、英語、記号、絵文字など世界中の文字に一意の番号(コードポイント)を割り当てる文字集合の標準です。例えば「A」は U+0041、「あ」は U+3042 のように表せます。
Unicode変換ツールでは何ができますか?
通常のテキストを\uXXXX形式のUnicodeエスケープへ変換し、逆にUnicodeエスケープを元の文字列へデコードできます。JSON、ログ、APIレスポンス、ソースコード中の日本語や絵文字確認に使えます。
ユニコードを文字に変換するには?
\u3042 のようなUnicodeエスケープ文字列を入力欄に貼り付け、「Unicodeを文字にデコード」を押すと元の文字へ戻せます。複数の\uXXXXが連続した文字列もまとめて変換できます。
Unicodeはどのように機能しますか?
Unicodeは各文字にコードポイントと呼ばれる固有の数値を割り当てます。これらのコードポイントは「U+XXXX」という形式で書かれ、「XXXX」は16進数です。例えば、文字「A」のコードポイントはU+0041です。
Unicodeブロックとは何ですか?
Unicodeは文字をスクリプトや用途に基づいてブロックに整理します。例えば、「Basic Latin」ブロックには英語で使用される文字が含まれ、「CJK統合漢字」ブロックには中国語、日本語、韓国語の文字が含まれています。
UTF-8とは何で、Unicodeとどのように関連していますか?
UTF-8はUnicode用の可変長文字エンコーディングです。各Unicode文字を1~4バイトでエンコードし、ASCIIキャラクタを主に使用するテキストに効率的で、すべてのUnicode文字をサポートします。
様々なプログラミング言語でテキストをUnicodeに変換する方法は?
以下に、様々なプログラミング言語でテキストをUnicodeに変換する例を示します。
Java
String text = "A";
String unicode = String.format("\\u%04x", (int) text.charAt(0));
System.out.println(unicode); // Output: \u0041PHP
$text = "A";
$unicode = sprintf("\\u%04x", ord($text));
echo $unicode; // Output: \u0041Go
package main
import "fmt"
func main() {
text := "A"
unicode := fmt.Sprintf("\\u%04x", text[0])
fmt.Println(unicode) // Output: \u0041
}JavaScript
const text = "A";
const unicode = "\\u" + text.charCodeAt(0).toString(16).padStart(4, "0");
console.log(unicode); // Output: \u0041Python
text = "A"
unicode = f"\\u{ord(text):04x}"
print(unicode) # Output: \u0041Unicode変換と文字コード変換は同じですか?
厳密には異なります。このページは主に文字とUnicodeエスケープ、コードポイントの確認に使うツールです。ファイルのShift_JIS、EUC-JP、UTF-8などを変換したい場合は、文字コード変換ツールを使う方が適しています。
絵文字をUnicodeに変換できますか?
はい。絵文字は U+1F600 のようなコードポイントや、JavaScript/JSONでは\uD83D\uDE00 のようなサロゲートペアとして表されることがあります。表示が崩れる場合は、サロゲートペアが途中で分割されていないか確認してください。
Unicodeデコード後に文字化けする場合は?
Unicodeエスケープ自体が正しくても、元データの文字コード、二重エスケープ、JSONのクォート処理が原因で読めないことがあります。まず一度だけデコードし、まだ\uが残る場合は二重エスケープを疑ってください。