ToolboxAgent

Unicode 轉換

在線 Unicode 轉換工具,支持文本與 Unicode 轉義序列雙向互轉。

使用說明

  1. 1 輸入普通文本或 Unicode 轉義文本
  2. 2 點擊編碼或解碼
  3. 3 複製轉換結果

相關工具

關於此工具

Unicode 轉換工具將普通文本(包括中文、Emoji、特殊符號)轉換為 \u 形式的轉義序列,或將已有的轉義序列還原為可讀文本。在 JavaScript、Java、Python 字符串中,非 ASCII 字符常以 \uXXXX 形式存儲,需要此工具互轉。

常見使用場景:調試 Java properties 文件中的中文亂碼、分析 JSON 數據中的 Unicode 轉義字符、處理 JavaScript 混淆代碼中的字符串、以及將文本轉義後安全嵌入正則表達式或 JSON 字符串。

與在線正則工具或手寫 charCodeAt 相比,本工具支持完整的 BMP 字符和補充字符(代理對),Emoji 表情等 4 字節 Unicode 字符(如 \uD83D\uDE00)能正確處理,不會出現截斷或亂碼。

常見問題

\u 轉義和 \U 轉義有什麼區別? +

\uXXXX 是 4 位十六進制,覆蓋 Unicode 基本多文種平面(BMP,U+0000 到 U+FFFF)。\UXXXXXXXX 是 8 位形式,用於 Python 字符串表示補充平面字符(如部分 Emoji)。JavaScript 中用代理對 \uD800\uDFFF 範圍表示補充字符,ES6 支持 \u{XXXXX} 大括號寫法。

為什麼 Emoji 轉義後出現兩段 \u? +

Unicode 碼點超過 U+FFFF 的字符(如大多數 Emoji)在 UTF-16 中需要用兩個碼元(代理對)表示。例如 😀 的碼點是 U+1F600,轉義為 \uD83D\uDE00。這是 JavaScript 等使用 UTF-16 的語言的正常行為,並非錯誤。

Java properties 文件為什麼要用 Unicode 轉義存中文? +

Java properties 文件默認使用 ISO-8859-1 編碼,無法直接存儲中文字符。官方要求將非 ASCII 字符轉為 \uXXXX 轉義序列。Java 9 以後支持 UTF-8 格式的 properties 文件,可以直接寫中文,但老項目仍需轉義。

Unicode 轉義後的內容能直接用在 JSON 中嗎? +

可以。JSON 規範明確支持 \uXXXX 形式的 Unicode 轉義,任何 JSON 解析器都能正確處理。在生成 JSON 時對非 ASCII 字符做轉義,可以提高跨系統傳輸的兼容性,尤其是經過某些不支持 UTF-8 的中間件時。

怎麼快速識別一段字符串是否包含 Unicode 轉義? +

查找 \u 後跟 4 個十六進制字符(0-9、a-f、A-F)的模式,即 \\u[0-9a-fA-F]{4}。常見於 Java 源碼、JavaScript 字符串、JSON 數據和 HTTP 響應體中。本工具的解碼功能可以批量還原這些序列。