Unicode 轉換 / 還原
把文字轉成 ⟦bs⟧u 編碼,或把編碼還原成文字。支援 ⟦bs⟧uXXXX、⟦bs⟧u'undefined'、U+XXXX 與 HTML 十六進位實體,包含 emoji 與重音字母。全程在瀏覽器執行。
輸入文字或 Unicode 編碼…
尚未產生結果。
什麼是 Unicode 編碼?
Unicode 編碼是把字元寫成數字碼點,而不是字元本身。在 JavaScript 裡,一個字元會寫成 ⟦bs⟧uXXXX,例如 H 是 ⟦bs⟧u0048;中文與 emoji 也用同樣的記法。編碼後的內容是純 ASCII,可以安全通過會破壞非 ASCII 文字的系統。
超過 U+FFFF 的字元(例如 emoji)無法放進單一 ⟦bs⟧uXXXX。JavaScript 會把它寫成一對代理對,所以 😀 會變成 ⟦bs⟧uD83D⟦bs⟧uDE00。其他格式沒有這個問題:⟦bs⟧u{1F600} 直接存碼點,U+1F600 是 Unicode 標準記法,😀 則是 HTML 十六進位實體。
如何使用 Unicode 轉換工具
- 貼上你想轉換的文字或跳脫序列。
- 選擇「編碼」把文字轉成代碼,或選擇「解碼」把代碼還原成文字。
- 在編碼模式下選擇格式,並決定只轉非 ASCII 字元還是全部字元。
- 按下按鈕轉換。
- 複製結果,或下載成 .txt 檔儲存。
Unicode 編碼範例
把 Hello 逐字編碼
Hello
⟦bs⟧u0048⟦bs⟧u0065⟦bs⟧u006C⟦bs⟧u006C⟦bs⟧u006F
把 emoji 編成代理對
😀
⟦bs⟧uD83D⟦bs⟧uDE00
把碼點還原成文字
⟦bs⟧u4F60⟦bs⟧u597D
你好
UrsaKit 與其他 Unicode 工具比較
| 比較項目 | UrsaKit | dencode | branah |
|---|---|---|---|
| 價格 | 免費 | 免費 | 免費含廣告 |
| 支援格式 | ⟦bs⟧uXXXX、⟦bs⟧u{X}、U+XXXX、&#xXXXX; | 九種以上記法 | 四種轉換方向 |
| 只轉非 ASCII 選項 | 有 | 無 | 無 |
| 混合格式解碼 | 支援 | 支援 | 有限 |
| 複製與下載 | 兩者都有 | 無 | 無 |
| 上傳文字 | 不上傳 | 不上傳 | 不上傳 |
常見問題
我的文字會被上傳嗎?
不會。轉換完全在瀏覽器用 JavaScript 執行,不會傳到伺服器。
⟦bs⟧uXXXX 和 U+XXXX 有什麼不同?
兩者描述同一個碼點,只是記法不同。⟦bs⟧uXXXX 是 JavaScript 的跳脫寫法,U+XXXX 是 Unicode 標準記法,常見於文件。編碼模式會輸出你選的格式,解碼模式兩種都能讀。
為什麼一個 emoji 會變成兩組 ⟦bs⟧uXXXX?
超過 U+FFFF 的字元(包含大多數 emoji)需要超過 16 位元。JavaScript 會拆成一對代理對,所以一個 emoji 會變成兩組 ⟦bs⟧uXXXX。⟦bs⟧u{X} 格式則會把碼點保留在同一組裡。
要怎麼把 Unicode 編碼還原成文字?
把方向切到「解碼」,貼上編碼後按按鈕即可。工具支援 ⟦bs⟧uXXXX、⟦bs⟧u{X}、⟦bs⟧U00000000、U+XXXX、&#xXXXX;、〹、⟦bs⟧xXX 與 %uXXXX,混用多種格式也能辨識。
emoji 與重音字母都能處理嗎?
可以。超出基本多文種平面的碼點在 JavaScript 格式下會編成代理對,也能正確解回;重音拉丁字母在所有格式都正常。
什麼時候該用 ⟦bs⟧u{X} 或 &#xXXXX;?
在現代 JavaScript、CSS 與 JSON 裡用 ⟦bs⟧u{X},一組就能容納任何碼點;寫 HTML 或 XHTML 需要實體時,則用 &#xXXXX;。