登录
首页 >  Golang >  Go问答

解组嵌套 xml golang 中的属性

来源:stackoverflow

时间:2024-04-08 09:54:33 348浏览 收藏

推广推荐
免费电影APP ➜
支持 PC / 移动端,安全直达

在Golang实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《解组嵌套 xml golang 中的属性》,聊聊,希望可以帮助到正在努力赚钱的你。

问题内容

我到处寻找,但找不到解决方案。

我正在尝试从维基百科获取嵌套 xml 标记的属性,但到目前为止无法获取嵌套属性。我专门尝试从 page 标记获取 pageid

这是 xml 的示例:

<api batchcomplete="">
  <query>
    <pages>
      <page _idx="25039021" pageid="25039021" ns="0" title="go (programming language)">
        <extract xml:space="preserve">
          stuff about golang
        </extract>
      </page>
    </pages>
  </query>
</api>

这是我正在使用的结构:

type Page struct {
    PageID string `xml:"pageid,attr"`
}

type Extract struct {
    Text string `xml:"query>pages>page>extract"`
    Page Page   `xml:"query>pages>page"`
}

但 extract.page.pageid 仍然什么也没返回。我遗漏了什么/做错了什么吗?


解决方案


您的结构应更改为:

type Page struct {
    PageID string `xml:"pageid,attr"`
    Text   string `xml:"extract"`
}

type Extract struct {
    Page Page `xml:"query>pages>page"`
}

fmt.Println(extract.Page.PageID)
fmt.Println(extract.Page.Text)

本篇关于《解组嵌套 xml golang 中的属性》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>