`, zawiera dosłowny ośmiowieloznakowy string `<div>`. Różne konteksty, różne kodery."}},{"@type":"Question","name":"Dlaczego niektóre znaki jak emoji albo tekst azjatycki są kodowane jako para liczb?","acceptedAnswer":{"@type":"Answer","text":"Bo **emoji i wiele znaków azjatyckich żyją powyżej podstawowej płaszczyzny Unicode**, używają wewnętrznie dwóch **UTF-16 code units** w JavaScript. Gdy narzędzie koduje je jako referencje numeryczne, poprawnie emituje pełny **codepoint** (jedna liczba, nie dwie). **Przykład**: 🎉 koduje się jako `🎉` (pojedynczy codepoint), nie jako dwie osobne referencje. **Dekodowanie** odwraca to bez strat. Jeśli widzisz w inputcie dziwne sekwencje dwóch liczb, to znaczy, że ten, kto kodował to wcześniej, NIE obsłużył poprawnie par surogatów, przepuść input przez Dekoduj, a narzędzie to naprawi."}},{"@type":"Question","name":"Czy działa offline? Czy mój tekst trafia gdzieś na zewnątrz?","acceptedAnswer":{"@type":"Answer","text":"**Wszystko działa w przeglądarce.** Brak wywołań serwera, brak analityki na inpucie, brak uploadu. Otwórz **zakładkę Network** w DevToolsach i potwierdź: zero requestów, gdy piszesz. Bezpieczne dla **wrażliwych treści**: dokumentów prawnych, szablonów wewnętrznych, danych klientów. **Działa też offline**: jak strona się załaduje, logika kodowania jest w pełni po stronie klienta, możesz odłączyć Wi-Fi i pracować dalej. **Tabela encji** (30 najpopularniejszych) jest wbudowana wprost w bundle strony."}},{"@type":"Question","name":"Dlaczego moja spacja niełamliwa ( ) dekoduje się do zwykłej spacji?","acceptedAnswer":{"@type":"Answer","text":"**Nie dekoduje, dekoduje się do spacji niełamliwej.** Wyglądają identycznie, ale to różne znaki: zwykła spacja to **U+0020**, spacja niełamliwa to **U+00A0**. Skopiuj zdekodowany wynik i wklej do inspektora Unicode, zobaczysz U+00A0. **Przeglądarki renderują je tak samo**, dlatego wygląda jak zwykła spacja. **Ważne**: spacje niełamliwe w źródle HTML potrafią psuć obliczenia layoutu, regex `\\s` je łapie, ale literalne `\" \"` (spacja) nie. Jeśli chcesz **zamienić je na prawdziwe spacje** po dekodowaniu, przepuść wynik przez nasze narzędzie znajdź i zamień."}},{"@type":"Question","name":"Czym różni się A od A?","acceptedAnswer":{"@type":"Answer","text":"**Ten sam znak, różne podstawy liczbowe.** `A` to **dziesiętna** referencja numeryczna dla codepointa 65 (litera A). `A` to **szesnastkowa** forma tej samej liczby (0x41 = 65 dziesiętnie). Obie dekodują się do 'A'. **Dlaczego obie istnieją**: hex jest zwięźlejszy dla wysokich codepointów (`🎉` zamiast `🎉` dla 🎉) i pasuje do sposobu, w jaki codepointy zwykle pisze się w dokumentacji (U+1F389). Dziesiętna jest starsza i czytelniejsza w zakresie ASCII. **Przeglądarki akceptują obie**, dekodowanie jest identyczne. **Przy kodowaniu**: to narzędzie emituje domyślnie dziesiętną, to częstsza konwencja w realnym HTML."}}]}
Koder encji HTML
Zamień <, >, & i polskie znaki na encje HTML. Zakoduj i odkoduj w obie strony.
LiveDziała w przeglądarce
Koduje tylko 5 znaków, które zmieniają znaczenie HTML: & < > " '. Polskie diakrytyki zostają.
Wejście
Wynik
'<script>'alert("xss")'</script>'
Cena: 5 € (10% taniej), Café Joe
Najczęściej używane encjeKliknij, żeby skopiować.
Czym są encje HTML i kiedy są potrzebne?
Niektóre znaki mają w HTML specjalne znaczenie. Wpiszesz znak mniejszości w CMS, a przeglądarka uzna, że zaczyna się tag. Wkleisz ampersand do linku, a przejmie go inny parametr. Rozwiązaniem są encje HTML: krótkie kody w stylu `&lt;` albo `&amp;`, które pokazują prawdziwy znak, nie myląc parsera.
Wszystko działa w przeglądarce: nic nie wychodzi na zewnątrz, bez logowania, bez limitów. Na dole tablica 30 najczęściej używanych nazwanych encji, kliknij wiersz, żeby skopiować.
Jak używać
Wybierz kierunek: Koduj (tekst na encje) albo Dekoduj (encje na tekst). Przełącznik na górze strony.
Wklej tekst po lewej. Wynik pojawia się po prawej natychmiast: bez przycisku Uruchom, bez opóźnienia.
Wciśnij Kopiuj, żeby zgrabić wynik. Albo Zamień, żeby przepuścić wynik w drugą stronę (przydatne do testowania w obie strony).
Szukasz konkretnej encji? Rozwiń tablicę referencyjną na dole (30 najpopularniejszych nazwanych encji), kliknij wiersz, żeby skopiować ten konkretny token encji.
Dekodowanie obsługuje wszystko: encje nazwane (`&copy;`), dziesiętne (`&#65;`), szesnastkowe (`&#x41;`). Mieszany format też przejdzie.
Kiedy się przydaje
Sześć sytuacji, w których to narzędzie ratuje stronę albo dziurę w bezpieczeństwie:
Pokazujesz fragmenty kodu na blogu. Chcesz pokazać `<div class="foo">` jako dosłowny tekst w tutorialu. Bez kodowania przeglądarka zjada tag i widzisz pustą ramkę. Koduj w trybie Strict zamienia ostre nawiasy na `<` i `>`, dzięki czemu kod pokazuje się jako tekst.
Wklejasz tekst z Worda albo Google Docs do CMS. Dokument ma inteligentne cudzysłowy (`„ "`), myślniki em (`-`), spacje niełamliwe. Niektóre CMS-y nie radzą sobie z tym. Koduj w trybie Nazwane zamienia je na czytelne encje typu `„` i `—`, które każdy system zrozumie.
Blokujesz prostą próbę XSS. Użytkownik wysłał `<script>alert("xss")</script>` w formularzu komentarza. Wyświetl to surowo, a skrypt odpali się u każdego odwiedzającego. Koduj w trybie Strict zamienia to w nieszkodliwy tekst. Prawdziwa obrona wymaga więcej, ale kodowanie wyjścia to pierwszy krok.
Sprzątanie starych maili HTML albo zescrapowanych stron. Kopiujesz tekst ze starego newslettera i jest pełen artefaktów `&eacute;` i `&#8230;`. Dekoduj zamienia je z powrotem na zwykłe é i …, gotowe do wklejenia do świeżego dokumentu.
Wysyłka treści przez stare systemy mailowe. Niektóre starsze serwery i silniki szablonów wycinają znaki spoza ASCII. Koduj w trybie Wszystko jako numer zamienia é na `&#233;`, co przetrwa drogę i wyrenderuje się poprawnie w każdym kliencie pocztowym.
Budujesz atrybut srcdoc dla iframe. HTML w środku `srcdoc="..."` musi mieć ucieczki dla cudzysłowów, inaczej całość się rozsypie. Koduj w trybie Strict to właśnie to czego potrzebujesz: dotyka tylko tych znaków, które obchodzą parser, resztę zostawia czytelną.