Почему JSON недопустим при использовании запятых в строке?

#java #json #jackson

#java #json #джексон

Вопрос:

Кто-нибудь знает, почему этот JSON недопустим?

 {"street_address":"Stone House Lane, Peckforton
, Tarporley
, London, Cheshire"}
  

Я использую Jackson для Java, и он жалуется на

 java.lang.IllegalArgumentException: com.fasterxml.jackson.core.JsonParseException:     Unexpected end-of-input: was expecting closing quote for a string value
at [Source: java.io.StringReader@6ad16fc1; line: 1, column: 405]
  

Я заметил, что этот JSON также считается недействительным на этом онлайн-сайте:
http://jsonviewer.stack.hu /

Ответ: Спасибо, для тех, кому интересно, я удалил эти нечитаемые символы с помощью tr -cd ‘11121540-176’ < файл > Чистый файл

Комментарии:

1. Не могли бы вы предоставить весь фрагмент кода, который вызывает проблему?

Ответ №1:

После копирования / вставки вашего точного текста он отображается как недопустимая переменная JSON. Затем я просто скопировал / вставил то же содержимое в блокнот (используя Windows 7) и отметил, что в вашей строке есть странные символы (эти символы не видны ни на этой странице, ни в веб-редакторах, поэтому вместо этого я использую пробел):

 {"street_address":"Stone House Lane, Peckforton
 , Tarporley
 , London, Cheshire"}
                                               ^           ^
                                               here and here
  

Я просто удалил их и работал, как ожидалось. Скопируйте / вставьте его отсюда:

 {"street_address":"Stone House Lane, Peckforton, Tarporley, London, Cheshire"}
  

После более углубленной оценки шестнадцатеричное представление этого символа равно u80A8.

Комментарии:

1. спасибо, для тех, кому интересно, я удалил эти нечитаемые символы с помощью tr -cd ‘11121540-176’ < файл > Чистый файл