Basiert auf fortschrittlicher KI auf dem Gerät und Hardwarebeschleunigung – für professionelle Leistung bei kompromissloser Privatsphäre.KI auf dem Gerät – professionell und privat.
JSON-String Escape Unescape
Text in ein JSON-String-Literal verwandeln, oder eines zurücklesen.
- Nichts wird hochgeladen
- Verschachtelte Ebenen abgeschält
- Exakter Hin- und Rückweg
- Fehler mit Zeile und Spalte
Textdatei hier ablegen
.json · .txt · .log · .ndjson · .jsonl und mehr · bis 10.0 MB in der kostenlosen Version
Alle vier ergeben gültiges JSON. Schalten Sie eine ein, wenn das Ziel des Literals es merkt.
Kostenlos: 1 Datei bis 10.0 MB. Pro: 1 Dateien, so weit Ihr Gerät reicht.
Was dieses JSON-Escape- und -Unescape-Werkzeug tut
Escape verwandelt beliebigen Text in einen gültigen JSON-String: in doppelten Anführungszeichen, mit escapten Anführungszeichen, Zeilenumbrüchen, Tabulatoren, Backslashes und Steuerzeichen. Unescape macht das Gegenteil — fügen Sie einen JSON-String ein und erhalten Sie den Klartext zurück. Einfügen, Datei wählen oder ablegen. Kann Unescape die Eingabe nicht lesen, nennt das Werkzeug die verletzte Regel und zeigt Ihnen die Stelle.
- Escape — Setzt doppelte Anführungszeichen um Ihren Text und escapt Anführungszeichen, Zeilenumbrüche, Tabulatoren, Backslashes und Steuerzeichen, sodass ein gültiges JSON-String-Literal entsteht, das jeder Parser annimmt.
- Unescape — Liest einen JSON-String wie "a\nb" und gibt den ursprünglichen String zurück. Ein nackter Rumpf ohne Anführungszeichen geht ebenfalls — genau das entsteht beim Kopieren eines Werts aus einer JSON-Datei.
- Einfügen, hochladen oder ablegen — Aus der Zwischenablage einfügen, den Dateiauswähler verwenden oder eine Datei auf die Ablagefläche ziehen. UTF-8- und UTF-16-Dateien werden an ihrer Bytereihenfolge-Markierung erkannt, sodass eine aus PowerShell exportierte Datei richtig gelesen wird statt als Zeichensalat anzukommen.
- Tauschen und neu anfangen — Tauschen schickt das Ergebnis zurück in die Eingabe und dreht die Richtung um, ein Hin- und Rückweg ist also ein Tastendruck. Neu anfangen leert Liste, Ergebnis und Dateiauswahl zugleich.
Escape oder Unescape: was Sie brauchen
Wenn Sie mehrzeiligen Text oder Benutzereingaben in JSON oder Quellcode einbetten, muss er richtig escapt sein, sonst zerbricht ein Anführungszeichen oder ein Zeilenumbruch die Syntax drumherum. Escape liefert Ihnen das exakte Literal zum Einfügen. Wenn Sie bereits einen escapten String haben — aus einer API-Antwort, einem Log-Aggregator, einer Konfigurationsdatei — und den echten Text lesen wollen, dreht Unescape das um. Beide Richtungen laufen sofort und arbeiten nach dem Laden der Seite auch ohne Verbindung weiter.
- Eine Konfiguration oder Fixture schreiben — Sie haben ein mehrzeiliges Zertifikat, ein SQL-Statement oder ein Template und brauchen es als einen JSON-Wert. Escapen Sie es, und die Zeilenumbrüche werden zu \n, statt die Datei zu zerbrechen.
- Eine Logzeile lesen — Strukturiertes Logging serialisiert die Nachricht, oft das ganze Ereignis ein zweites Mal. Unescapen Sie es, und der Stacktrace wird wieder zu lesbaren Zeilen statt einer Reihe von \n und \".
- Eine API-Antwort untersuchen — Ein Feld, das als String mit JSON darin ankommt, ist eine doppelt kodierte Nutzlast. Einmal unescapen ergibt das innere Dokument, das dann an den JSON-Formatierer geht.
- In Quellcode einfügen — Ein Literal für JavaScript, Python oder Go braucht escapte Anführungszeichen und Backslashes. Escapen Sie ohne die äußeren Anführungszeichen und fügen Sie den Rumpf zwischen die vorhandenen ein.
Alle Zeichen, die JSON escapt
Die JSON-Grammatik verlangt, dass genau zwei Zeichen innerhalb eines Strings escapt werden — das doppelte Anführungszeichen und der Backslash — sowie jedes Steuerzeichen unter U+0020. Sieben davon haben eine kurze Form aus zwei Zeichen; der Rest verwendet eine \u00XX-Sequenz. Das ist die vollständige Liste, und genau das erzeugt das Werkzeug.
| Zeichen | Escapt als | Hinweise |
|---|---|---|
| Doppeltes Anführungszeichen " | \" | Pflicht. Sonst endet der String. |
| Backslash \ | \\ | Pflicht. Sonst beginnt ein Escape. |
| Zeilenumbruch U+000A | \n | Pflicht. Ein echter Umbruch ist in einem JSON-String unzulässig. |
| Wagenrücklauf U+000D | \r | Pflicht. |
| Tabulator U+0009 | \t | Pflicht. |
| Rückschritt U+0008 | \b | Pflicht. |
| Seitenvorschub U+000C | \f | Pflicht. |
| Weitere Steuerzeichen U+0000 bis U+001F | \u0000 bis \u001f | Pflicht. Eine Kurzform gibt es nicht. |
| Einzelnes Surrogat U+D800 bis U+DFFF | \u + D800 bis DFFF | Hier immer escapt. Es hat keine UTF-8-Kodierung, roh belassen geht das Zeichen beim Speichern verloren. |
| Schrägstrich / | \/ | Optional. Einschalten, wenn das Literal in einen HTML-Skriptblock kommt. |
| Nicht-ASCII über U+007F | \u00e9, und 😀 als Paar D83D DE00 | Optional. Für einen reinen ASCII-Transportweg. Zeichen außerhalb der Basisebene werden zu einem Paar von Escapes. |
| Zeilentrenner U+2028, U+2029 | \u2028, \u2029 | Optional. In JSON unescapt zulässig, in JavaScript vor ES2019 ein Syntaxfehler. |
| Entfernen U+007F | nicht escapt | JSON verlangt es nicht, es bleibt also stehen. Das Nicht-ASCII-Escapen ändert daran nichts — es ist ein ASCII-Zeichen. |
Eine Folge ist ausdrücklich festzuhalten: Escapen und Unescapen sind exakte Umkehrungen. Bei jeder Kombination von Optionen liefert das Unescapen des Ergebnisses den Ausgangstext Zeichen für Zeichen zurück, einschließlich der Leerzeichen an beiden Enden.
Verschachtelte und doppelt escapte Strings
Der häufigste Grund dafür, dass ein Unescape scheinbar nichts tut, ist ein mehrfach escapter Wert. Jede Serialisierungsrunde verdoppelt die Backslashes: aus einem Zeilenumbruch wird \n, dann \\n, dann \\\\n. Ein Durchgang entfernt eine Ebene, und was übrig bleibt, sieht immer noch escapt aus.
- Tiefe auf Automatisch lassen — Das Werkzeug schält weiter, solange das Ergebnis ein JSON-String in Anführungszeichen ist, bis zu zehn Ebenen, und hört dann auf. Es nennt die Anzahl der entfernten Ebenen, Sie wissen also immer, was passiert ist.
- Feste Tiefe, um unterwegs anzuhalten — Wählen Sie 1, 2 oder eine beliebige Zahl bis 10, um genau so viele Ebenen zu entfernen. Nützlich, wenn der innere Wert ein Dokument ist, das zum JSON-Formatierer soll statt weiter dekodiert zu werden.
- Der Schältest ist bewusst streng — Eine Ebene wird nur entfernt, wenn das Verbleibende wirklich ein JSON-String in Anführungszeichen ist, der sich parsen lässt. Gewöhnlicher Text, der zufällig \n erwähnt, wird nie geschält — das Werkzeug kann also keinen Text zerkauen, der immer nur Klartext war.
- Auf die Ebenenzahl achten — Nennt es weniger Ebenen als erwartet und enthält das Ergebnis noch Escapes, waren die übrigen nie gültig — meist eine handbearbeitete Logzeile mit einem verirrten Backslash. Führen Sie Escape auf dem Ergebnis aus, um genau zu sehen, wo es aufhört, Sinn zu ergeben.
Die Optionen auf einen Blick
- Ergebnis in Anführungszeichen setzen — Standardmäßig an. Das Ergebnis ist ein vollständiges JSON-String-Literal, fertig zum Einfügen als Wert. Ausschalten liefert nur den escapten Rumpf, zum Einfügen zwischen Anführungszeichen, die in Ihrem Code schon stehen.
- Nicht-ASCII als \uXXXX escapen — Standardmäßig aus. Jedes Zeichen über U+007F wird zu \uXXXX, das Literal ist also reines ASCII. Emoji und andere Zeichen außerhalb der Basisebene werden zu zwei Escapes, was ein Parser erwartet.
- Schrägstriche escapen — Standardmäßig aus. Schreibt / als \/, was gültiges JSON bleibt und verhindert, dass ein schließendes Tag innerhalb eines Strings einen HTML-Skriptblock zu früh beendet.
- Zeilentrenner escapen — Standardmäßig aus und nicht verfügbar, solange das Nicht-ASCII-Escapen läuft, weil das sie bereits abdeckt. Schreibt U+2028 und U+2029 als Escapes, damit das Literal gefahrlos in JavaScript-Code passt.
- Unescape-Tiefe — Standardmäßig Automatisch. Bestimmt, wie viele Verschachtelungsebenen entfernt werden. Siehe den Abschnitt oben.
- Zähler und Verhältnis — Jedes Ergebnis zeigt Zeichen und Bytes vor und nach der Umwandlung sowie das Wachstumsverhältnis — die Zahl, auf die es ankommt, wenn der Wert in eine Spalte oder eine Nutzlastgrenze passen muss.
Was jede Fehlermeldung bedeutet
Wenn Unescape ablehnt, nennt es die verletzte Regel und gibt Zeile und Spalte an — von uns aus der Position in Ihrem Text berechnet und nicht aus der englischen Meldung eines Parsers herausgelesen. Deshalb steht die Meldung in Ihrer Sprache und die markierte Stelle stimmt in jeder Sprache.
| Meldung | Wann sie auftritt | Was zu tun ist |
|---|---|---|
| Der String wird nie geschlossen | Der Text hat ein öffnendes Anführungszeichen ohne passendes schließendes — meist ein von einer Log-Grenze abgeschnittener Wert oder eine unvollständige Kopie. | Das schließende Anführungszeichen ergänzen oder den ganzen Wert einfügen. |
| Unbekannte Escape-Sequenz | Auf einen Backslash folgt ein Zeichen, das JSON nicht kennt, etwa \q oder ein Windows-Pfad ohne verdoppelte Trenner. | Backslashes verdoppeln, oder Escape auf den Originaltext anwenden, um ein korrektes Literal zu erzeugen. |
| Unvollständiges \u-Escape | Auf ein \u folgen nicht genau vier Hexadezimalziffern. | Die vier Ziffern vervollständigen. \u12 ist kein gültiges Escape, \u0012 schon. |
| Rohes Steuerzeichen | Im String steht ein echter Zeilenumbruch oder Tabulator statt \n oder \t. Das ist der häufigste Fehler, wenn ein Wert aus einem Terminal eingefügt wird. | Stattdessen Escape auf den Text anwenden — genau dafür ist es da. |
| Zusätzlicher Inhalt nach dem String | Zwei Strings stehen nebeneinander, etwa "a" "b", oder nach dem schließenden Anführungszeichen folgt noch etwas. | Einen Wert nach dem anderen umwandeln, oder sie vorher zu einem String verbinden. |
| Das ist ein JSON-Dokument, kein String | Die Eingabe ist ein Objekt oder ein Array. Unescape arbeitet auf einem einzelnen String-Wert. | An den JSON-Formatierer oder den JSON-Validator schicken — beide sind in der Meldung verlinkt. |
Grenzen, Geschwindigkeit und Datenschutz
Alles geschieht auf Ihrem eigenen Gerät. Kein Upload-Schritt, keine Warteschlange auf einem Server, keine Kopie Ihres Textes irgendwo außer in dem Tab, den Sie offen haben. Auch deshalb ist es schnell: nichts muss reisen.
- Kostenlos — Eine Datei auf einmal, bis 10 MB, mit allen Optionen und allen Tiefen. Einfügen läuft durch dieselbe Prüfung, es gibt also nichts zu umgehen.
- Pro — Keine feste Größengrenze — so weit, wie Ihr Gerät kann — dazu bis zu 20 Dateien auf einmal und alle Ergebnisse als ein Archiv.
- Geschwindigkeit — Ein 10-MB-Dokument wird in etwa 22 Millisekunden escapt und in etwa 21 unescapt. Die Umwandlung läuft außerhalb des Hauptthreads, mit Fortschritt und einem Abbrechen-Knopf, der die Arbeit wirklich stoppt statt sie zu verstecken.
- Was nie gesendet wird — Ihr Text, Ihre Dateinamen und Ihre Ergebnisse. Das Werkzeug arbeitet nach dem Laden der Seite auch bei abgeschaltetem Netz weiter — die einfachste Art, das selbst nachzuprüfen.
- Formate, die es öffnet — .json, .txt, .log, .ndjson, .jsonl, .md, .csv, .tsv, .xml, .yaml, .yml, .sql, .env und .ini. Alles andere wird schon im Dateiauswähler abgelehnt, mit einem Link auf das Werkzeug, das es öffnet: eine Tabelle geht zu Excel zu JSON, ein Dokument zu Word zu Text.
Ein 10-MB-Dokument wird auf einem Mittelklasse-Notebook in etwa 22 Millisekunden escapt, außerhalb des Hauptthreads, sodass die Seite nie einfriert.
Häufige Fragen
Wie funktioniert das JSON-Escape-Tool?
Wählen Sie Escape oder Unescape und fügen Sie Ihren Text ein oder laden Sie eine Datei. Escape setzt doppelte Anführungszeichen um den Text und escapt Anführungszeichen, Backslashes, Zeilenumbrüche, Tabulatoren und Steuerzeichen, sodass ein gültiges JSON-String-Literal entsteht. Unescape macht das Gegenteil und gibt den Rohtext zurück. Das Ergebnis steht neben der Quelle samt Zählern, und Sie können es kopieren, herunterladen oder zurück in die Eingabe schicken.
Sind meine Daten sicher?
Ihr Text wird nirgendwohin gesendet. Escapen und Unescapen laufen auf Ihrem eigenen Gerät: nichts wird hochgeladen, nichts gespeichert, nichts protokolliert — und sobald die Seite geladen ist, arbeitet das Werkzeug ganz ohne Verbindung weiter. Abgelegte Dateien werden lokal gelesen und beim Leeren der Liste wieder freigegeben.
Was ist der Unterschied zwischen Escape und Unescape?
Escape wandelt Klartext in ein JSON-String-Literal: es fügt doppelte Anführungszeichen hinzu und escapt Sonderzeichen, damit der Wert in JSON oder Code sicher ist. Unescape macht das Gegenteil: es nimmt einen JSON-String und liefert den ursprünglichen Text zurück, wobei \n, \t und \" wieder zu echten Zeichen werden.
Welche Zeichen werden escapt?
Die von JSON geforderten: doppelte Anführungszeichen werden zu \", Backslashes zu \\, Zeilenumbrüche zu \n, Wagenrückläufe zu \r, Tabulatoren zu \t, Rückschritt zu \b, Seitenvorschub zu \f, und jedes andere Zeichen unter U+0020 wird zu \u00XX. Einzelne Surrogate werden ebenfalls immer escapt, weil sie keine gültige UTF-8-Kodierung haben und beim Speichern verloren gingen. Drei Optionen ergänzen \uXXXX für Nicht-ASCII, \/ für Schrägstriche und \u2028 / \u2029 für die beiden Unicode-Zeilentrenner.
Was erwartet Unescape, und was tun, wenn es fehlschlägt?
Es nimmt einen JSON-String mit seinen Anführungszeichen an, etwa "hallo\nwelt", und ebenso einen escapten Rumpf ohne sie, etwa hallo\nwelt — genau das, was beim Kopieren eines Werts aus einer JSON-Datei entsteht. Umgebende Leerzeichen werden bei einem Wert in Anführungszeichen ignoriert und bei einem nackten Rumpf beibehalten. Ist die Eingabe kein gültiger String, nennt das Werkzeug die verletzte Regel, gibt Zeile und Spalte an und zeigt den umgebenden Text mit Links zum JSON-Formatierer und -Validator.
Kommt es mit doppelt escapten oder verschachtelten Strings zurecht?
Ja. Eine Logzeile, die zwei- oder dreimal serialisiert wurde, enthält nach einem einzigen Durchgang immer noch \\n und \\\". Lassen Sie die Tiefe auf Automatisch, dann schält das Werkzeug weiter, solange das Ergebnis noch ein JSON-String in Anführungszeichen ist, bis zu zehn Ebenen, und nennt anschließend die Anzahl. Eine feste Tiefe hält unterwegs an, wenn Sie eine Zwischenebene ansehen wollen.
Warum sollte ich Nicht-ASCII oder Schrägstriche escapen?
Escapen Sie Nicht-ASCII als \uXXXX, wenn der Wert etwas durchqueren muss, das nicht zuverlässig 8-Bit-sicher ist, oder wenn das Literal in der Versionsverwaltung reines ASCII sein soll. Escapen Sie Schrägstriche, wenn der String in einen HTML-Skriptblock kommt, wo ein schließendes Tag innerhalb eines Strings das Tag zu früh beenden würde. Beide Formen sind gültiges JSON — die Optionen gibt es, weil das Ziel es manchmal doch merkt.
Was sind U+2028 und U+2029, und warum gibt es dafür eine Option?
Das sind der Unicode-Zeilentrenner und der Absatztrenner. Sie sind in einem JSON-String unescapt völlig zulässig und waren bis ES2019 in einem JavaScript-String-Literal unzulässig — ein direkt in JavaScript-Code eingefügter JSON-String konnte also ein Syntaxfehler sein, der auf ein unsichtbares Zeichen zeigt. Die Option escapt sie, damit das Literal überall eingefügt werden kann.
Wie groß darf die Datei sein, und läuft es mobil?
Kostenlos: eine Datei bis 10 MB. Pro hebt die feste Grenze auf und geht so weit, wie Ihr Gerät kann, nimmt bis zu 20 Dateien auf einmal und liefert alle Ergebnisse als ein Archiv. Einfügen hat keine eigene Grenze — es läuft durch dieselbe Prüfung. Das Werkzeug läuft in jedem modernen Browser auf Desktop, Tablet und Telefon, und große Dokumente werden außerhalb des Hauptthreads verarbeitet, damit die Seite reagierbar bleibt.
aus 65 Bewertungen
Dieses Tool bewerten
Auf einen Stern tippen — geht schnell