首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在xml字符串中提取元素

在xml字符串中提取元素
EN

Stack Overflow用户
提问于 2015-04-16 09:22:29
回答 1查看 4.5K关注 0票数 3

我想提取所有的loc元素值,但是我得到了一个空数组

我的代码:

代码语言:javascript
复制
package main

import (
    "fmt"
    "encoding/xml"
)

type Query struct {
    XMLName xml.Name `xml:"urlset"`
    locs []Loc `xml:"url>loc"`
}

type Loc struct {
    loc string 
}

var data = []byte(`<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
   <loc>http://www.konga.com/mobile-recharge</loc>
   <lastmod>2015-04-14</lastmod>
   <changefreq>daily</changefreq>
   <priority>0.5</priority>
</url>
<url>
   <loc>http://www.konga.com/beauty-health-personal-care</loc>
   <lastmod>2015-04-14</lastmod>
   <changefreq>daily</changefreq>
   <priority>0.5</priority>
</url>
</urlset>`)


func main() {

    var q Query
    xml.Unmarshal(data, &q)
    fmt.Println(q.locs)
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-16 09:32:36

它只解压缩导出,因此Caps字段。另外,Loc不应该是一个结构,而可以是一个直接的字符串。

代码语言:javascript
复制
package main

import (
    "encoding/xml"
    "fmt"
)

type Query struct {
    XMLName xml.Name `xml:"urlset"`
    Locs    []Loc    `xml:"url>loc"`
}

type Loc string

var data = []byte(`<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
   <loc>http://www.konga.com/mobile-recharge</loc>
   <lastmod>2015-04-14</lastmod>
   <changefreq>daily</changefreq>
   <priority>0.5</priority>
</url>
<url>
   <loc>http://www.konga.com/beauty-health-personal-care</loc>
   <lastmod>2015-04-14</lastmod>
   <changefreq>daily</changefreq>
   <priority>0.5</priority>
</url>
</urlset>`)

func main() {

    var q Query
    xml.Unmarshal(data, &q)
    fmt.Println(q.Locs)
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29670462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档