xml - 无法在 Go 中正确解码/编码动态 XML 结构

标签 xml go marshalling unmarshalling

我有一个描述 XML 模式的 xsd,我正在尝试在 go 结构中编写这个 xsd 的表示,以便我能够基于这个模式编码/解码 XML。

这是我为重现我遇到的问题而编写的一些 go playground 代码。

https://play.golang.org/p/ktJOsCDyLW

在架构中,标签 videoweb 是动态的(因为它们都可以在 media 下出现不止一次,并且具有不同的里面的内容)。

我尝试编写一个动态结构以及 Unmarshaller/Marshaller 接口(interface),如示例所示,我似乎能够执行解析,但它解码/编码内部内容不正确,忽略名称和 URL 列表,只采用一个元素每一个。

我不确定这里的问题是什么。

对此事的任何帮助表示赞赏

最佳答案

我在这里修改了你的样本https://play.golang.org/p/rbcoL0ayeb .将您的定义更改为以下内容:

系列:

type Series struct {
   Name []Name `xml:"name"`
}

网站:

type Website struct {
   Url []Url `xml:"url"`
}

关于xml - 无法在 Go 中正确解码/编码动态 XML 结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44532848/

相关文章:

go - pkg/sftp 比 Linux SCP 慢得多,为什么?

arrays - 如何在 Go 中将任何数据类型转换为字节

c# - 来自另一个应用程序域的 CreateInstance 适用于控制台应用程序,但在单元测试时抛出 MissingMethodException

c# - 如何正确地将字符串从 Unity 编码到 C/C++?

可以建议 xsd 元素后代的 Java XML Schema 库

xml - http ://xml. apache.org/xml-soap 去哪儿了?

string - 为什么拆分字符串本身会返回一个长度为 2 的空 slice ?

c# - 如何在托管代码中正确翻译 WH_MOUSE lparam

python - 解析 wiki 风格的网页,XPath 错误

java - 如何将 XML 标签分配给字符串变量