... но я получил ParseException
вместо удобного JSONObject
.Почему это так?
Если вы получили ParseException
, это означает, что то, что вы считаете JSON, (на самом деле) не является допустимым JSON.Это не проблема с вашим парсинговым кодом или парсером JSONObject
.Это либо проблема с тем, каким образом (предположительно) был создан JSON, либо с «каналом», по которому он достиг кода, который должен был его проанализировать.
Должен ли я относиться к строке по-другому, так как в ней есть карта?
Нет.
Замечу, что ваши примеры кода не достаточно ясны / полны, чтобы точно сказать, что вы делаете.(В будущем, пожалуйста, предоставьте настоящий MCVE , а не фрагменты кода, которые не имеют большого смысла 1 ... и, конечно, не могут быть скомпилированы и запущены.) Ноничто не указывает на то, что , код является причиной ParseException
.
Или я делаю что-то сверх возможностей JSONParser
?
Нет.Синтаксический анализатор JSON может справиться с любым JSON при условии, что он правильно сформирован .
Чтобы исправить это, вам необходимо выяснить, почему анализатор считает, что ваш JSONплохой, и вернитесь к основной причине ошибки.
1 - Например, почему вы присваиваете объект JSONParser
переменной типа Object
?