После "Unit_number" есть дополнительная закрывающая кавычка. Ах, это была просто ошибка копирования и вставки.
В этом нет ничего плохого, насколько я могу судить и согласно jsonlint.com .
Просто чтобы разобраться: у вашей структуры есть один самый внешний объект, у которого есть свойство Street
. Значение свойства Street
является массивом с одной записью. Эта одна запись является объектом со свойствами Street_name
, который имеет строковое значение, и Street_numbers
, который имеет значение массива. Одна запись в массиве Street_numbers
- это объект с двумя свойствами, number
и Unit_number
.
Обновление : Я никогда не обращался к ошибке SBJSON.
Если вы получаете эту ошибку от SBJSON, она предлагает одно из следующих действий:
- То, что вы вводите в SBJSON, не то, что вы цитировали (это довольно простая ошибка). Например, возможно, то, что вы кормите, каким-то образом обрезается сразу после
"Street":
.
- У вас есть символ после
"Street":
, который выглядит как пробел к тому времени, когда вы вставили его в StackOverflow, но не является пробелом по обычным определениям, и поэтому SBJSON думает, что это персонаж, который должен быть обработан и задыхается от него.
- В SBJSON есть ошибка, связанная со значением в строке после двоеточия (что маловероятно).
- В SBJSON есть ошибка, связанная с точным типом пробелов, которые есть у вас в этом месте. В Юникоде есть много разных пробельных символов, если вы (возможно, случайно) использовали необычный, SBJSON может не обработать его правильно.
Но если то, что выглядит как пробел в том, что вы опубликовали, полностью состоит из возвратов каретки, пробелов, табуляции, перевода строки и других классических пробелов, и если строка, которую вы передаете десериализатору SBJSON, - это то, что вы опубликовали, это проблема с SBJSON.