假设我有以下内容:
我希望能够对一个模型进行序列化/反序列化,其中
请注意,我不希望
type IObject interface {
}
type Item struct {
Description string
Data []byte
}
type FunctionX1 struct {
Object IInclusionObject
}
type FunctionX2 struct {
Object1 IInclusionObject
Object2 IInclusionObject
}
我希望能够对一个模型进行序列化/反序列化,其中
Item
、FunctionX1
和 FunctionX2
都实现了 IObject
接口,并且它们可以任意深度地相互引用。请注意,我不希望
FunctionX1{Item{"foo", []byte("bar")}}
被序列化为:"object": {
"Description": "foo"
"Data": ...
}
而不是:
"FunctionX1": {
"item": {
"Description": "foo"
"Data": ...
}
}
我需要自己编写JSON marshaller吗?似乎无法使用现有的marshaller。
如果需要,以下是相关问题。是否有JSON prettifier可以流式处理有效但随机格式的JSON,并将其输出为漂亮的版本(请注意,JSON可能非常大 - 我不想生成、解析和生成格式化的JSON)。