JSON прерывается, когда двойные кавычки входят в ключ / значение - PullRequest
0 голосов
/ 31 декабря 2018

Пример данных:

{"630":{"TotalLength":"33-3/8" - 36-3/4""},"631":{"Length":"34 37 7/8"}}

Мы столкнулись с проблемой двойных кавычек в ответе JSON.Как мы можем заменить двойные кавычки на "\" ", который входит в ключ или значение? Java является платформой разработки.

1 Ответ

0 голосов
/ 31 декабря 2018

В этом ответе предполагается, что вы не контролируете создание этой JSON-подобной строки.Если вы можете контролировать эту часть, то вам следует как следует избегать ее.

В этом случае, поскольку систематический анализ не является вариантом, поскольку это еще не допустимый JSON, все, что я мог бы предложить, - это пройти черезразличные строки и посмотрите, можете ли вы найти шаблон, к которому вы можете применить некоторую логику и избежать всех " s, которые не позволяют строке быть допустимым JSON.

Вот, вероятно, способ начать:

Все ", которые необходимы для того, чтобы строка была пустым JSON, окружены одним или несколькими символами из {, :, , и }, с пробелом между " и другими символами JSON или без него.

Итак, если вы анализируете JSON-подобную строку с использованием Java и ищите все " s, и, когда сталкиваетесь сВо-первых, если они находятся вместе с любым из вышеперечисленных символов (с пробелом или без него), вы просто оставляете все как есть.Если нет, замените это " на \".

Обратите внимание, что вышеупомянутый метод может работать или не работать в зависимости от данных, о которых идет речь.То, что я имею в виду, это подход, который может оказаться полезным, если абсолютно невозможно для экранирования строки во время ее создания, и если эти строки следуют строгому шаблону относительно неэкранированного " s.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...