Skip to content

Latest commit

 

History

History
23 lines (15 loc) · 1.47 KB

File metadata and controls

23 lines (15 loc) · 1.47 KB

BadJson - парсер "плохого" JSON'a :)

Парсит только JSON-объекты, мыссивы не поддерживаются, но можно расширить функционал.

Нормально парсятся не экранированные ковычки* в строках-значениях полей, в именах полей не экранированные ковычки не поддерживаются.

  • На самом деле нужно где то все же остановится, по этому останавливаемся, если после '"'(не экранированной, экранированные пропускаем) следует ','[пробелы,переводы строк]'"' (то есть новая пара поле-значение) либо '}' (завершение объекта)

Поддерживаемые типы значений в полях объектов JSON: строки - конвертируются в String true\false - конвертируются в Boolean число без точки - Integer число с точкой - Float null - null

Сборка: mvn clean compile assembly:single Запуск: java -jar BadJson-0.1-jar-with-dependencies.jar

Запускаемый класс net.wolf.bad.json.TestJsonParser, читает файл с примерами JSON, выводит JSON с файла, парсит и отображает как JsonObject.prettyPrint().