微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Golang XML解析

我的 XML数据:
<dictionary version="0.8" revision="403605">
    <grammemes>
        <grammeme parent="">POST</grammeme>
        <grammeme parent="POST">NOUN</grammeme>
    </grammemes>
</dictionary>

我的代码

type Dictionary struct {
    XMLName xml.Name `xml:"dictionary"`
    Grammemes *Grammemes `xml:"grammemes"`
}

type Grammemes struct {
    Grammemes []*Grammeme `xml:"grammeme"`
}

type Grammeme struct {
    Name string `xml:"grammeme"`
    Parent string `xml:"parent,attr"`
}

我得到Grammeme.Parent属性,但我没有得到Grammeme.Name.为什么?

如果希望字段保存当前元素的内容,可以使用标记xml:“,chardata”.你标记你的结构的方式,而是寻找< grammeme>子元素.

因此,您可以解码的一组结构是:

type Dictionary struct {
    XMLName   xml.Name   `xml:"dictionary"`
    Grammemes []Grammeme `xml:"grammemes>grammeme"`
}

type Grammeme struct {
    Name   string `xml:",chardata"`
    Parent string `xml:"parent,attr"`
}

你可以在这里测试这个例子:http://play.golang.org/p/7lQnQOCh0I

原文地址:https://www.jb51.cc/go/186929.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐