为了账号安全,请及时绑定邮箱和手机立即绑定

在 Go 中解组 XML

在 Go 中解组 XML

Go
MM们 2021-11-01 16:11:57
我有以下xml“文件”:<pinnacle_line_feed>    <PinnacleFeedTime>1439954818555</PinnacleFeedTime>    <lastContest>34317132</lastContest>    <lastGame>218491030</lastGame>    <events>        <event>            <event_datetimeGMT>2015-08-21 09:50</event_datetimeGMT>            <gamenumber>483406220</gamenumber>            <sporttype>Aussie Rules</sporttype>            <league>AFL</league>            <IsLive>No</IsLive>            <participants>                <participant>                    <participant_name>Hawthorn Hawks</participant_name>                    <contestantnum>1251</contestantnum>                    <rotnum>1251</rotnum>                    <visiting_home_draw>Visiting</visiting_home_draw>                    </participant>                <participant>                    <participant_name>Port Adelaide Power</participant_name>                    <contestantnum>1252</contestantnum>                    <rotnum>1252</rotnum>                    <visiting_home_draw>Home</visiting_home_draw>                </participant>            </participants>            <periods></periods>        </event>    </events></pinnacle_line_feed>我试图用 Golang 解析这个,到目前为止已经写了以下内容:package mainimport (    "fmt"    "encoding/xml")type Participant struct {    XMLName            xml.Name `xml:"participant"`    participant_name   string `xml:"participant_name"`    contestantnum      int `xml:"contestantnum"`    rotnum             int `xml:"rotnum"`    visiting_home_draw string `xml:"visiting_home_draw"`}坦率地说,我对 Golang 中的深度嵌套 xml 解析研究了很多,但我没有找到太多可以帮助解决此代码的 Unmarshal 部分的问题。理想情况下,代码将返回类似于 Python 字典的内容,例如,{event_datetimeGMT: 2015-08-21, gamenumber: 483406220, ... ,visiting_home_draw: "Home"}
查看完整描述

2 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

您需要将结构中的所有字段大写。xml 解码器需要导出字段才能正常工作。到这里去游乐场。


查看完整回答
反对 回复 2021-11-01
  • 2 回答
  • 0 关注
  • 174 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信