LINUX.ORG.RU

Encode irregular JSON

 


0

2

Есть json массив объектов в котором есть тип объекта и значение. Значение может быть разного типа. Как парсить это в golang показано тут:

https://play.golang.org/p/8kV8K67AVGl

и тут:

https://petsta.net/posts/2015-06-18-irregular-json-decoding-in-go/

подскажите плиз как не парсить, а наоборот создавать такой json из разных объектов?

★★

Ответ на: комментарий от quester

ты покажи код, который у тебя не работает. у меня вот такой же JSON на питоне работает. и такой же JSON с бондом работает.

vedowi6419
()
Ответ на: комментарий от vedowi6419

нет пока кода. по первой ссылке пример скажем. из json получаем объекты. как из этих же объектов разного типа собрать обратно json? как вы понимаете это не простой marshal

quester ★★
() автор топика
Ответ на: комментарий от vedowi6419

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

quester ★★
() автор топика
Ответ на: комментарий от quester

вопрос не понятен. пиши func(t *YourComplexType) MarshalJSON([]byte, error) и собирай из строк. Все, что нужно - вернуть массив байт. В golang нет union и при разборе надо будет делать switch type.

arrecck ★★★
()
Ответ на: комментарий от quester

И шо? У тебя для каждого типа будет вызываться маршаллер, поэтому не важно корневая структура или внутри другой.

Demacr ★★
()
Ответ на: комментарий от Demacr

а потом склеивать все это как строки? как то не кошерно. можно и изначально как строки все генерировать

quester ★★
() автор топика
Ответ на: комментарий от nikolnik

о! большое спасибо! но это конечно как через зад гланды удалять, сегодня написал, а завтра забыл. нужен в golang более простой маханизм работы с json

quester ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.