我是否能够定义一个包含*字符串的结构,并使用它来解组innerxml内容。
有关https://play.golang.org/p/oaGu0rKYNgi示例,请参阅此处
我期望Struct变量,容器,指向
<top xmlns="http://example.com/schema/1.2/config"/>相反,它是零。
我在src/encoding/xml/marshal_test.go中看到了类似的示例结构
type IndirInnerXML struct {
T1 T1
InnerXML *string `xml:",innerxml"`
T2 T2
}任何帮助都非常感谢。
发布于 2018-07-21 00:29:39
您引用的测试是针对Marshal的,而不是针对Unmarshal的。没有针对innerxml for Unmarshal的*string的测试;有一个测试可以证明它不能与[]string一起工作,它能与[]byte和string一起工作,但仅此而已。根据the docs for Unmarshal的说法
如果结构有一个类型为
[]byte或string且标记为",innerxml"的字段,则解组会将嵌套在该字段的元素中的原始XML累加起来。其余的规则仍然适用。
它专门支持[]byte和string来解组内部XML。对于Go维护者来说,是否应该支持*string是一个问题。
https://stackoverflow.com/questions/51446722
复制相似问题