Я пытаюсь поместить json в javascript-файл в java, но когда я пишу json для строки, строка не представляется допустимым json для javascript; ему не хватает некоторых побегов. (Это происходит в виде строки в формате JSON, который я отформатированный поддельной JSON.)Джексон не ускользает от котировок в JSON
Например, это может быть допустимым JSON в моем файла JavaScript:
{
"message":
"the following books failed: [{\"book\": \"The Horse and his Boy\",\"author\": \"C.S. Lewis\"}, {\"book\": \"The Left Hand of Darkness\",\"author\": \"Ursula K. le Guin\"}, ]"
}
Вот что я получаю, хотя , где двойные кавычки не экранируются:
{
"message":
"The following books failed: [{"book": "The Horse and his Boy","author": "C.S. Lewis"}, {"book": "The Left Hand of Darkness","author": "Ursula K. le Guin"}, ]"
}
я получаю второй результат, когда я делаю это:
new ObjectMapper().writer().writeValueAsString(booksMessage);
Но когда я пишу это непосредственно в файл с Джексоном, я первый, хороший результат:
new ObjectMapper().writer().writeValue(fileToWriteTo, booksMessage);
Так почему же избежать джексон иначе при записи в файл, и как я могу получить его, чтобы избежать так для меня при написании строки?
Ваш «действительный json» - странный формат. Почему у вас есть то, что похоже на массив, встроенный в ту же строку, что и '' Следующие книги не удалось: ...?? – nnnnnn
Именно так я форматировал вывод метода toString() для списка этого объекта Это выглядит довольно странно, когда вы видите его внутри строки в JSON. – CorayThan