LINUX.ORG.RU

История изменений

Исправление Obezyan, (текущая версия) :

Варианты?

Не изобретать велосипед, а нормально реализовать RFC 7159 как это сделано, например, в PHP (php.net).

Вот, хочется впендюрить в строгий статический язык джейсонину из интернета,

Go как раз и создали для непонимающих веб С-программистов. Если бы они понимали то и язык бы не пришлось изобретать.

в которой в принципе может быть что угодно.

Нет, не может. Есть четкие типы данных которые представляет JSON и они имеют четкий синтаксис. Там всего 4 примитивных типа (string, number, boolean, null) и 2 структурных (array, object).

Это логически самопротиворечивая задача, тут красивого решения не предвидится.

В голове С программиста действительно не может быть красивого решения, он не на том уровне думает.

Строка всегда обрамлена в кавычки, число не обрамлено ничем, boolean бывает только true или false, null всегда null, массив обрамлен квадратными скобками, а объект - фигурными. Один рекурсивный алгоритм красиво размотает любой JSON.

Исходная версия Obezyan, :

Варианты?

Не изобретать велосипед? а нормально реализовать RFC 7159 как это сделано, например, в PHP (php.net).

Вот, хочется впендюрить в строгий статический язык джейсонину из интернета,

Go как раз и создали для непонимающих веб С-программистов. Если бы они понимали то и язык бы не пришлось изобретать.

в которой в принципе может быть что угодно.

Нет, не может. Есть четкие типы данных которые представляет JSON и они имеют четкий синтаксис. Там всего 4 примитивных типа (string, number, boolean, null) и 2 структурных (array, object).

Это логически самопротиворечивая задача, тут красивого решения не предвидится.

В голове С программиста действительно не может быть красивого решения, он не на том уровне думает.

Строка всегда обрамлена в кавычки, число не обрамлено ничем, boolean бывает только true или false, null всегда null, массив обрамлен квадратными скобками, а объект - фигурными. Один рекурсивный алгоритм красиво размотает любой JSON.