Ich schreibe eine JSON-Datei, die von einem Java-Programm gelesen wird. Das Fragment ist wie folgt ...
{
"testCases" :
{
"case.1" :
{
"scenario" : "this the case 1.",
"result" : "this is a very long line which is not easily readble.
so i would like to write it in multiple lines.
but, i do NOT require any new lines in the output.
I need to split the string value in this input file only.
such that I don't require to slide the horizontal scroll again and again while verifying the correctness of the statements.
the prev line, I have shown, without splitting just to give a feel of my problem"
}
}
}
Antworten:
Überprüfen Sie die Spezifikation ! Die JSON Grammatik char Produktion kann die folgenden Werte annehmen:
"
außer-\
oder-oder-Steuerzeichen\"
\\
\/
\b
\f
\n
\r
\t
\u
vier hexadezimale ZiffernZeilenumbrüche sind "Steuerzeichen". Nein, Sie haben möglicherweise keinen wörtlichen Zeilenumbruch in Ihrer Zeichenfolge. Sie können es jedoch mit einer beliebigen Kombination von
\n
und codieren\r
.Das JSONLint- Tool bestätigt, dass Ihr JSON ungültig ist.
Update: Und wenn Sie Zeilenumbrüche in Ihre JSON-Syntax schreiben möchten, ohne tatsächlich Zeilenumbrüche in die Daten aufzunehmen, haben Sie sogar doppelt Pech. Während JSON bis zu einem gewissen Grad menschenfreundlich sein soll, handelt es sich immer noch um Daten, und Sie versuchen , diese Daten mit einer beliebigen Formatierung zu versehen. Darum geht es bei JSON absolut nicht.
quelle
Ich bin mir Ihrer genauen Anforderung nicht sicher, aber eine mögliche Lösung zur Verbesserung der Lesbarkeit besteht darin, sie als Array zu speichern.
Die machen wieder mit, wann immer es nötig ist
quelle
Keine gute Lösung, aber Sie können das hjson- Tool ausprobieren . Link . Sie können Text im Editor mehrzeilig schreiben und dann in das richtige gültige JSON-Format konvertieren. Hinweis: Es werden '\ n' Zeichen für die neuen Zeilen hinzugefügt, aber Sie können sie einfach in jedem Texteditor mit der Funktion "Alle ersetzen .." löschen.
PS Sollte ein Kommentar zu der Frage sein, aber nicht genug Repo haben, sorry.
quelle
Wie ich verstehen konnte, geht es bei der Frage nicht darum, wie eine Zeichenfolge mit Steuerungssymbolen übergeben wird,
json
sondern darum, wie json in einer Datei gespeichert und wiederhergestellt wird, in der Sie eine Zeichenfolge mit Editor-Steuerungssymbolen teilen können.Wenn Sie mehrzeilige Zeichenfolgen in einer Datei speichern möchten, wird in Ihrer Datei das gültige
json
Objekt nicht gespeichert . Wenn Sie Ihrejson
Dateien jedoch nur in Ihrem Programm verwenden, können Sie die Daten wie gewünscht speichern und alle Zeilenumbrüche jedes Mal manuell aus der Datei entfernen, wenn Sie sie in Ihr Programm laden und dann an den json-Parser übergeben.Alternativ, was besser wäre, können Sie Ihre
json
Datenquellendateien haben, in denen Sie einen Stich wie gewünscht bearbeiten und dann alle neuen Zeilen mit einem Dienstprogramm aus der gültigenjson
Datei entfernen, die Ihr Programm verwenden wird.quelle
Ich glaube, es hängt davon ab, welchen JSON-Interpreter Sie verwenden ... in einfachem Javascript könnten Sie Zeilenabschlusszeichen verwenden
quelle
a\ c
=>a c
.