Konwerter Unicode

Zamień tekst na sekwencje \uXXXX / \u{HEX} JavaScript, zdekoduj mieszane sekwencje z powrotem na tekst i sprawdź każdy znak jako punkt kodowy: U+ hex, dziesiętnie, bajty UTF-8, jednostki UTF-16 i sekwencje escape JS. Punkty kodowe poza BMP (emoji) nigdy nie są rozdzielane na połówki pary zastępczej.
Całe przetwarzanie odbywa się lokalnie w przeglądarce — dane nigdy nie są wysyłane na żaden serwer.
Styl escape:
Kodowanie: tekst jest dzielony na punkty kodowe Unicode (dzięki temu emoji pozostają nienaruszone), a każdy z nich zapisywany jest jako sekwencja escape JavaScript.
Dekodowanie: każda sekwencja \uXXXX, \u{hex} lub U+hex (wielkie lub małe litery) zostaje zamieniona na swój znak. Sąsiadujące pary zastępcze (surrogate pair) są scalane w jeden punkt kodowy. Tekst bez sekwencji escape przechodzi bez zmian.
Inspektor: każdy punkt kodowy staje się jednym wierszem oddzielonym tabulatorami: znak, U+HEX, dziesiętnie, bajty UTF-8, jednostki UTF-16 i escape JS. Całą tabelę można skopiować z wyniku albo pobrać.
Ctrl+Enter w polu wejściowym uruchamia aktywny tryb.
Wybierz Kodowanie, Dekodowanie lub Inspektor i uruchom. Całe przetwarzanie odbywa się w przeglądarce.
Jak czytać kolumny inspektora:
U+HEX to punkt kodowy w zapisie szesnastkowym; dziesiętnie to ta sama liczba w systemie dziesiętnym. Bajty UTF-8 pokazują od jednego do czterech bajtów, które zajmuje znak zapisany w UTF-8 (np. 中 = E4 B8 AD). UTF-16 pokazuje jedną albo dwie 16-bitowe jednostki, których znak używa w łańcuchu JavaScript (emoji powyżej U+FFFF potrzebują dwóch jednostek, tzw. „pary zastępczej”, np. U+1F600 = D83D DE00). Escape JS to zalecana postać znaku w kodzie źródłowym.
Co ładuje przycisk Przykład:
Przykład należący do aktywnego trybu, nigdy jeden stały tekst, bo jeden tekst nie może obsłużyć wszystkich trzech. Kodowanie i Inspektor biorą zwykłe znaki, więc dostają Hello 中文! 🎉 — ASCII, CJK, znak pełnej szerokości i jedno emoji. Dekodowanie bierze sekwencje escape, a zwykłe zdanie żadnej nie zawiera: zostałoby odesłane słowo w słowo i tryb nie miałby nic do pokazania, więc Dekodowanie dostaje Say \u4e2d\u6587 \u{1F600} U+0041 \uD83C\uDF89 OK, który zawiera po jednej postaci każdej formy, jaką akceptuje dekoder (parę \uXXXX pisaną małymi literami, klamrę \u{HEX}, postać U+hex, sąsiadującą parę zastępczą oraz słowa, które nie są sekwencjami escape). Wiersz pod polami podaje wynik, którego należy szukać; w trybie Kodowanie podąża on także za stylem escape i polem ASCII, więc pozostałe trzy style widać, naciskając Przykład ponownie.
Czym jest Unicode?

Unicode to jeden katalog, który przypisuje każdemu znakowi każdego systemu pisma liczbę, jego punkt kodowy, od U+0000 do U+10FFFF — 1 114 112 możliwych miejsc ułożonych w 17 płaszczyzn po 65 536. Pierwsza płaszczyzna, Basic Multilingual Plane (BMP), zawiera znaki większości żywych języków; większość emoji i wiele historycznych pism leży na wyższych płaszczyznach („poza BMP”).

UTF-8, UTF-16 i UTF-32 to nie konkurencyjne zestawy znaków, lecz trzy sposoby zapisu tych liczb w bajtach — tryb Inspektor pokazuje wszystkie trzy dla tego samego znaku obok postaci escape JavaScript.

Unicode nazywa i numeruje znaki; UTF-8, UTF-16, UTF-32 i zapisy \uXXXX to tylko różne sposoby zapisania tych samych liczb.