Я пишу файл JSON, который будет читать программа Java. Фрагмент такой ...
{
"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"
}
}
}
Ответы:
Ознакомьтесь со спецификацией ! Создание char в грамматике JSON может принимать следующие значения:
"
-или-\
-или-контроль символы\"
\\
\/
\b
\f
\n
\r
\t
\u
четыре шестнадцатеричных цифрыНовые строки - это «управляющие символы», поэтому нет, в вашей строке может не быть буквального перевода строки. Однако вы можете кодировать его , используя любые комбинации
\n
и\r
вам требуется.Инструмент JSONLint подтверждает, что ваш JSON недействителен.
Обновление: И если вы хотите писать символы новой строки внутри синтаксиса JSON без фактического включения новой строки в данные, то вам даже вдвойне не повезло. Хотя JSON в определенной степени предназначен для удобства пользователей, это все еще данные, и вы пытаетесь применить к этим данным произвольное форматирование. JSON - это совершенно не то.
источник
Я не уверен в ваших точных требованиях, но одно из возможных решений для улучшения «читабельности» - сохранить его в виде массива.
Присоединение снова при необходимости с
источник
Не очень хорошее решение, но вы можете попробовать инструмент hjson . Ссылка . Это позволяет вам писать многострочный текст в редакторе, а затем преобразовывать его в правильный допустимый формат JSON. Примечание: он добавляет символы '\ n' для новых строк, но вы можете просто удалить их в любом текстовом редакторе с помощью функции «Заменить все ..».
PS Должен быть комментарий к вопросу, но не хватает репо, извините.
источник
Насколько я понял, вопрос не в том, как передать строку с использованием управляющих символов,
json
а в том, как сохранить и восстановить json в файле, где вы можете разделить строку с помощью управляющих символов редактора.Если вы хотите сохранить многострочную строку в файле, ваш файл не будет хранить допустимый
json
объект. Но если вы используете своиjson
файлы только в своей программе, вы можете хранить данные по своему усмотрению и удалять все новые строки из файла вручную каждый раз, когда вы загружаете его в свою программу, а затем переходите к парсеру json.Или, в качестве альтернативы, что было бы лучше, вы можете иметь свои
json
файлы источников данных, в которых вы редактируете sting по своему усмотрению, а затем удаляете все новые строки с помощью какой-либо утилиты из допустимогоjson
файла, который будет использовать ваша программа.источник
Я считаю, что это зависит от того, какой интерпретатор json вы используете ... в простом javascript вы можете использовать терминаторы строки
источник
a\ c
=>a c
.