Zeilen korrekt maskiert in ein JSON-Array umwandeln
Fügen Sie fünf Zeilen ein, darunter einen Windows-Pfad und einen Satz mit Anführungszeichen, und erhalten Sie ein gültiges Array mit 5 Werten: Aus C:\data\file.txt wird "C:\\data\\file.txt", ohne Nacharbeit. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Text
- alpha A quoted "value" C:\data\file.txt last
- Werte
- alpha, A quoted "value", C:\data\file.txt, , last
- Zeilenanzahl
- 5
Zeilenenden von Unix, Windows und klassischem Mac werden akzeptiert, Leerzeichen bleiben erhalten und beabsichtigte Leerzeilen gehen nicht verloren. Ein einzelner abschließender Umbruch gilt als natürliches Textende und nicht als zusätzliches leeres Element.
Warum Anführungszeichen von Hand nicht reichen
Jede Zeile schnell per Suchen und Ersetzen in Anführungszeichen zu setzen, funktioniert nur, bis echter Text kommt. Eine Zeile mit einem doppelten Anführungszeichen beendet den Wert zu früh, ein Windows-Pfad wie C:\data\file.txt enthält Backslashes, die verdoppelt werden müssen, und ein Tabulator braucht eine eigene Escape-Folge. Der Konverter wendet deshalb auf jede Zeile die üblichen Regeln für Zeichenketten an: Anführungszeichen erhalten einen Backslash davor, Backslashes werden verdoppelt und Steuerzeichen in gültiger Form geschrieben. Umlaute, Emoji und nichtlateinische Schriften bleiben lesbar, weil sie gar keine Ersetzung brauchen.
Was als ein Wert zählt
Jede Zeile ist genau ein Wert. Es wird weder an Kommas noch an Semikolons oder Leerzeichen getrennt, und die Ränder einer Zeile werden nicht gekürzt, Sie erhalten also genau das, was Sie einfügen. Zeilenumbrüche von Unix, Windows und alten Macs führen zum selben Ergebnis. Eine Leerzeile in der Mitte wird zu einem leeren Wert, ein einzelner Umbruch ganz am Ende dagegen ignoriert. Prüfen Sie Listen aus Tabellen oder Terminals vor der Verwendung, denn ein übersehenes Leerzeichen ergibt einen anderen Wert.
Fügen Sie pro Zeile einen Textwert ein
Beginnen Sie mit einfachem Text, bei dem jede Zeile genau einen Wert darstellt. Einkaufslisten, Feature-Flags, aus einem Terminal kopierte Dateinamen, Tabellenbeschriftungen und Kennungen aus einer E-Mail eignen sich gleichermaßen. Das Werkzeug trennt weder an Kommas noch an Semikolons oder Leerzeichen; Satzzeichen innerhalb einer Zeile bleiben daher Bestandteil des Werts.
Auch führende und nachgestellte Leerzeichen werden nicht entfernt, denn in Testdaten, Festbreitenformaten und exakten Bezeichnungen können sie wichtig sein. LF von Unix, CRLF von Windows und CR vom klassischen Mac führen zum selben Ergebnis. Innere Leerzeilen werden zu leeren Strings.
Endet der eingefügte Text mit einem Umbruch, wird nur dieser letzte Trenner ignoriert, damit kein überraschendes leeres Element entsteht. Mindestens ein Zeichen ist erforderlich; eine vollständig leere Eingabe wird abgelehnt und nicht stillschweigend als erfundener Wert verarbeitet.
Anwendungsfälle
Eine Konfigurationsliste erstellen
Fügen Sie Umgebungen, Flags oder erlaubte Werte ein und erhalten Sie ein gültiges Array für Ihre Konfiguration.
Häufige Fragen
Was geschieht mit Leerzeilen?
Innere Leerzeilen werden leere Strings. Ein letzter Umbruch wird ignoriert und erzeugt keinen Phantomwert.
Werden Leerzeichen an den Zeilenrändern entfernt?
Nein. Führende und nachgestellte Leerzeichen bleiben erhalten, weil sie zum vorgesehenen Wert gehören können.
Was passiert mit Anführungszeichen und Backslashes in einer Zeile?
Sie werden nach den üblichen Regeln maskiert: Ein doppeltes Anführungszeichen erhält einen Backslash davor, ein Backslash wird verdoppelt, Tabulatoren und andere Steuerzeichen werden zu gültigen Escape-Folgen. So bleibt A quoted "value" ein einziger gültiger Wert.
Erzeugt ein Zeilenumbruch ganz am Ende einen leeren Wert?
Nein. Ein einzelner abschließender Umbruch gilt als natürliches Ende des eingefügten Textes, der übliche Umbruch eines Editors erzeugt also keinen überraschenden leeren Wert. Leerzeilen in der Mitte werden dagegen zu leeren Werten.
Werden Kommas innerhalb einer Zeile in einzelne Werte aufgeteilt?
Nein. Nur Zeilenumbrüche trennen Werte, daher bleiben Kommas, Semikolons und Leerzeichen innerhalb einer Zeile Teil dieses Wertes. So bleiben Adressen, Bezeichnungen und Sätze mit Kommas unversehrt.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/str/lines-to-json-array \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"alpha\nA quoted \"value\"\nC:\\data\\file.txt"}'const res = await fetch("https://api.kit.forhosting.com/str/lines-to-json-array", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "alpha\nA quoted \"value\"\nC:\\data\\file.txt"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/lines-to-json-array",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "alpha\nA quoted \"value\"\nC:\\data\\file.txt"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/lines-to-json-array", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"alpha\\nA quoted \\"value\\"\\nC:\\\\data\\\\file.txt"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"alpha\nA quoted \"value\"\nC:\\data\\file.txt"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/lines-to-json-array", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"text": "alpha\nA quoted \"value\"\nC:\\data\\file.txt"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.lines_to_json_array",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Machen Sie aus einer eingefügten Liste ein gültiges JSON-Array, ohne Anführungszeichen oder umgekehrte Schrägstriche von Hand auszubessern. Der Konverter behandelt jede Zeile als String, wendet die JSON-Maskierung an und liefert den codefertigen Text zusammen mit den erkannten Werten und der Zeilenanzahl.
Überlassen Sie JSON die sichere Maskierung
Da keine externen Dienste beteiligt sind und der Ablauf deterministisch ist, erzeugt dieselbe Eingabe stets exakt dieselbe Ausgabe. Jede Zeile wird nach den standardisierten Regeln für JSON-Strings serialisiert und nicht bloß durch eine einfache Ersetzung in Anführungszeichen gesetzt. Das ist entscheidend, sobald Text doppelte Anführungszeichen, umgekehrte Schrägstriche, Tabs oder andere Steuerzeichen enthält. Anführungszeichen erhalten eine Maskierung, wörtliche Schrägstriche werden verdoppelt und Steuerzeichen als gültige JSON-Sequenzen ausgegeben.
Prüfen Sie die Grenzen vor der Nutzung
Kontrollieren Sie das Ergebnis besonders bei Daten aus Tabellen, Terminals oder Editoren, denn dieses Werkzeug bewahrt den Inhalt und errät keine Absicht. Unauffällige Leerzeichen können unterschiedliche Strings erzeugen, während eine innere Leerzeile bewusst zu einem leeren String wird. Ein abschließender Umbruch beendet dagegen nur das Dokument. Möchten Sie Leerraum entfernen, leere Einträge löschen, Werte deduplizieren oder sortieren beziehungsweise Zahlen und Boolesche Werte als JSON-Primitiven interpretieren, führen Sie diese Schritte ausdrücklich davor oder danach aus. Jedes erzeugte Element bleibt ein String: Die Zeile `42` wird zum String `"42"` und nicht zur Zahl 42; auch `true` bleibt Text. Diese feste Regel verhindert unbeabsichtigte Typwechsel. Vergleichen Sie bei Automatisierungen `line_count` mit der erwarteten Datensatzanzahl und verwenden Sie `values`; zum Kopieren eignet sich direkt der formatierte Inhalt von `result`.
Integrationsbeispiele
Daten für eine API vorbereiten
Wandeln Sie Kennungen aus einem Bericht in ein korrekt maskiertes JSON-Array für den Anfragekörper um.
Zuverlässige Test-Fixtures anlegen
Überführen Sie Dateinamen, Beschriftungen und Grenzfälle deterministisch, ohne wichtige Leerzeichen zu verlieren.
Technische Fragen
Was kostet die Nutzung?
Jede Ausführung über die API kostet $0.002. Die Browser-Version läuft kostenlos und lokal.
Werden Zahlen und Boolesche Werte zu JSON-Primitiven?
Nein. Jede Zeile wird ein JSON-String; `42`, `true` und `null` bleiben Textwerte in Anführungszeichen.
Wie werden Anführungszeichen und Schrägstriche behandelt?
Die Standard-JSON-Serialisierung maskiert sie ebenso wie Tabs und andere Steuerzeichen korrekt.