Escaper ciągów

Escapuj albo odescapuj ciągi dla 8 formatów: HTML, XML, JavaScript, Java, .Net (C#), JSON, CSV i SQL.
Całe przetwarzanie odbywa się lokalnie w przeglądarce — Dane nigdy nie są wysyłane na żaden serwer.
Format:
Kierunek:
⚠ Ostrzeżenie bezpieczeństwa: escapowanie ciągów nie zastępuje zapytań parametryzowanych. Samo escapowanie NIE zapobiega wstrzyknięciu SQL. Zawsze używaj zapytań parametryzowanych (prepared statements) w kodzie produkcyjnym.
Jak używać: wybierz format i kierunek (Escapuj / Odescapuj), a następnie wpisz lub wklej tekst — wynik aktualizuje się automatycznie. Kliknij Przetwórz, aby ręcznie uruchomić konwersję.
W trybach JSON, JavaScript, Java i .Net zaznacz Escapuj wszystkie znaki spoza ASCII, aby zamienić znaki takie jak chińskie na sekwencje \uXXXX.
Odescapuj odwraca escapowanie: &lt; staje się <, \n staje się nowym wierszem itd.
HTML: Escapuj zamienia & < > " ' na encje HTML (&amp; &lt; &gt; &quot; &#39;). Używaj tego, gdy osadza się tekst wprowadzony przez użytkownika w HTML, aby zapobiec atakom XSS.
Odescapuj zamienia encje HTML (&amp; &lt; &gt; &quot; &#39;) z powrotem na pierwotne znaki. Używa natywnego parsera HTML przeglądarki do niezawodnego dekodowania wszystkich nazwanych i numerycznych encji.
XML: Escapuj zamienia te same 5 znaków co HTML (& < > " ') na encje bezpieczne dla XML. XML wymaga escapowania wszystkich znaków &, nawet w wartościach atrybutów.
Odescapuj zamienia encje XML z powrotem na pierwotne znaki. Obsługuje 5 predefiniowanych encji XML oraz numeryczne odwołania do znaków. Ta sama logika co odescapowanie HTML.
JavaScript: Escapuj zamienia znaki specjalne na sekwencje escape JavaScript: \n \t \\ \" \' \xHH \uHHHH \u{H...}. Używaj tego przy dynamicznym generowaniu literałów ciągów JavaScript.
Odescapuj zamienia sekwencje escape JavaScript (\n \t \xHH \uHHHH itd.) z powrotem na znaki dosłowne. Obsługuje wszystkie standardowe sekwencje escape ECMAScript, w tym escape'y punktów kodowych \u{H...}.
JSON: Escapuj zamienia \" \\ i znaki sterujące na sekwencje escape bezpieczne dla JSON zgodnie z RFC 8259. Używaj tego, gdy osadza się tekst w wartościach ciągów JSON.
Odescapuj zamienia sekwencje escape JSON (\" \\ \n \uXXXX itd.) z powrotem na znaki dosłowne. Zgodnie z RFC 8259: dekodowane są tylko poprawne sekwencje escape JSON.
CSV: Escapuj zgodnie z RFC 4180: otacza pola w podwójne cudzysłowy, jeśli zawierają przecinki, cudzysłowy lub znaki nowej linii. Wewnętrzne cudzysłowy są podwajane (" → "").
Odescapuj odwraca escapowanie CSV z RFC 4180: usuwa zewnętrzne podwójne cudzysłowy i odpodwaja wewnętrzne ("" → "). Poprawnie obsługuje pola wieloliniowe i cytowane przecinki.
SQL: Escapuj escapuje pojedyncze cudzysłowy przez podwajanie (' → ''), co działa we wszystkich głównych bazach (MySQL, PostgreSQL, SQL Server, SQLite). Obsługuje to wyłącznie escapowanie literałów tekstowych — nie chroni przed wstrzyknięciem SQL w dynamicznych zapytaniach.
Odescapuj zamienia podwojone pojedyncze cudzysłowy ('' → ') z powrotem na pojedyncze. Odwraca standardowe escapowanie literałów tekstowych SQL.
Java: Escapuj zamienia znaki specjalne na sekwencje escape Javy: \n \t \r \\ \" \' \uXXXX itd. Użyj tego przy generowaniu literałów ciągów Javy.
Odescapuj zamienia sekwencje escape Javy z powrotem na znaki dosłowne. Obsługuje wszystkie standardowe sekwencje escape Javy, w tym escape'y Unicode \uXXXX.
.Net (C#): Escapuj zamienia znaki specjalne na sekwencje escape C#: \n \t \r \a \v \0 \\ \" \uXXXX \UHHHHHHHH itd. Użyj tego przy generowaniu literałów ciągów C#.
Odescapuj zamienia sekwencje escape C# z powrotem na znaki dosłowne. Obsługuje wszystkie standardowe sekwencje C#, w tym \UHHHHHHHH UTF-32 i escape'y szesnastkowe o zmiennej długości \xHH....
Escapowanie zależy od kontekstu

Ten sam tekst potrzebuje różnych escape'ów zależnie od miejsca, w którym wyląduje: treść HTML potrzebuje &lt; &amp; &gt;, atrybut w podwójnych cudzysłowach dodatkowo &quot;, ciąg JavaScript — escape'ów ukośnikiem wstecznym, a URL — kodowania procentowego. Escapowanie pod zły kontekst to sposób, w jaki dochodzi do wstrzyknięcia znaczników i XSS.

Zasada kciuka: escapuj pod miejsce docelowe, a nie pod źródło — decyduj o tym, dokąd dane trafiają, a nie skąd pochodzą.