Konwerter Unicode Escape Online
Konwertuj tekst na sekwencje escape Unicode i z powrotem w Twojej przeglądarce.
Do czego służy
Tekst Unicode ↔ sekwencje escape
Formaty JSON i JS
Generuj sekwencje \uXXXX kompatybilne z JSON, Java, C# i JavaScript ES5, lub nowe \u{} z ES6.
100% prywatności
Kodowanie i dekodowanie odbywają się w Twojej przeglądarce. Żadne dane nie opuszczają Twojego urządzenia.
Obsługa emoji
Poprawnie obsługuje pary zastępcze UTF-16 i punkty kodowe spoza BMP (emoji, rozszerzony ujednolicony CJK).
Natychmiastowo
Wyniki aktualizują się w czasie rzeczywistym podczas wpisywania lub wklejania treści.
Jak to działa
Trzy kroki, żadnych komplikacji
Wprowadź tekst lub sekwencje escape
Wklej tekst do przekonwertowania na escape Unicode (np. \u0048\u0065\u006C\u006C\u006F) lub wklej sekwencje escape do zdekodowania z powrotem na czytelny tekst.
Wybierz tryb konwersji
Wybierz 'Tekst → Escape', aby kodować, lub 'Escape → Tekst', aby dekodować. Możesz wybrać format \uXXXX (BMP) lub \u{XXXXX} (ES6, obsługuje emoji i znaki spoza BMP).
Skopiuj wynik
Wynik pojawia się w czasie rzeczywistym. Użyj przycisku kopiowania, aby przenieść go do schowka.
FAQ
Masz pytania?
To tekstowe reprezentacje znaków Unicode używające wyłącznie znaków ASCII. Format \uXXXX reprezentuje punkt kodowy Unicode za pomocą czterech cyfr szesnastkowych (obejmuje BMP, czyli pierwsze 65536 znaków). Przykłady: \u0041 = 'A', \u00E9 = 'é', \u4E2D = '中'. Są stosowane, gdy system docelowy nie obsługuje bezpośrednio znaków spoza ASCII.
\uXXXX to klasyczny format obejmujący BMP (U+0000 do U+FFFF). Działa w JSON, Java, C#, JavaScript ES5 i Pythonie. \u{XXXXX} to rozszerzony format ES6 (ECMAScript 2015) obsługujący dowolny punkt kodowy Unicode, w tym znaki spoza BMP, takie jak emoji (🎉 = \u{1F389}). Używaj go, gdy potrzebujesz zgodności ze znakami uzupełniającymi w nowoczesnym JavaScript.
JSON wymaga, aby pliki były w ASCII lub UTF-8, ale dopuszcza sekwencje \uXXXX do reprezentowania dowolnych znaków. Gwarantuje to interoperacyjność, gdy kanał komunikacyjny nie radzi sobie dobrze z Unicode. W JavaScript sekwencje escape są przydatne w ciągach ze znakami problemowymi, w wyrażeniach regularnych i gdy kod źródłowy musi być czystym ASCII ze względu na wymagania systemowe.
Emoji i wiele dodatkowych znaków azjatyckich leży poza BMP (U+10000 do U+10FFFF). W formacie \uXXXX są reprezentowane jako pary zastępcze: dwie kolejne wartości \uXXXX. Na przykład 🎉 = \uD83C\uDF89. Tak właśnie JavaScript ES5 generował je wewnętrznie. Dzięki \u{1F389} (ES6) unika się zamieszania z parami zastępczymi i używa bezpośredniego punktu kodowego.
W internacjonalizacji (i18n) pliki .properties Javy historycznie wymagały, aby znaki spoza ASCII były w formacie \uXXXX. Narzędzie native2ascii konwertowało pliki z natywnymi znakami do tego formatu. Od Javy 9 pliki .properties obsługują UTF-8 bezpośrednio. Mimo to wiele starszych projektów zachowuje format escape, a ten konwerter ułatwia pracę z nimi.
Unicode: historia (1991), kodowanie UTF-8 i sekwencje escape w językach programowania
Unicode powstał, aby rozwiązać chaos niezgodnych ze sobą kodowań: ASCII (1963, tylko 128 znaków), Latin-1, Big5, Shift-JIS, KOI8-R... każdy region używał własnego systemu. Konsorcjum Unicode zostało założone w 1988 roku i w 1991 opublikowało pierwszą wersję standardu, z celem przypisania unikalnego numeru (punktu kodowego) każdemu znakowi ze wszystkich systemów pisma na świecie. Unicode 15.1 definiuje obecnie ponad 149 000 znaków.
UTF-8, zaprojektowany przez Kena Thompsona i Roba Pike'a w 1992 roku, stał się dominującym kodowaniem w internecie dzięki kompatybilności z ASCII i wydajności dla tekstu zachodniego. W 2008 roku wyprzedził Latin-1 jako najczęściej stosowane kodowanie w internecie, a od 2012 roku jest używany w ponad 90% wszystkich stron internetowych. Sekwencje escape \uXXXX pozwalają reprezentować dowolny znak Unicode w czystych ciągach ASCII.
Każdy nowoczesny język programowania ma własną składnię escape Unicode: Python używa \uXXXX i \UXXXXXXXX, Java i C# używają \uXXXX, JavaScript ES5 używa \uXXXX z parami zastępczymi dla rozszerzonego BMP, ES6 wprowadził \u{XXXXX}, a Rust używa \u{XXXXX}. Pliki JSON muszą być w UTF-8 i dopuszczają \uXXXX dla dowolnego znaku, co czyni ten konwerter szczególnie przydatnym przy pracy z umiędzynarodowionymi API lub plikami konfiguracyjnymi.