+ 收藏我们

网站模板

网站模板搜索
404模板 营销型模板 外贸网站模板 单页模板 双语模板 标签大全
电话:18630701785
首页 > 站长学院 > 如何将嵌套的 XML 元素解组到字符串数组中? >

如何将嵌套的 XML 元素解组到字符串数组中?

时间:2024-04-08 08:54:14

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《如何将嵌套的 XML 元素解组到字符串数组中?》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容
我的 xml 包含预定义元素的数组,但我无法选取该数组。 xml 结构如下:

<?xml version='1.0' encoding='utf-8'?>
<results preview='0'>
    <meta>
       <fieldorder>
          <field>values(metric_name)</field>
       </fieldorder>
    </meta>
    <result offset='0'>
        <field k='values(metric_name)'>
            <value><text>process.cpu.avg</text></value>
            <value><text>process.cpu.last</text></value>
            <value><text>process.cpu.max</text></value>
            <value><text>process.cpu.min</text></value>
            <value><text>process.disk.avg</text></value>
            <value><text>process.disk.last</text></value>
            <value><text>process.disk.max</text></value>
            <value><text>process.disk.min</text></value>
            <value><text>process.ram.avg</text></value>
            <value><text>process.ram.last</text></value>
            <value><text>process.ram.max</text></value>
            <value><text>process.ram.min</text></value>
        </field>
    </result>
</results>
我尝试创建一个如下所示的结构:

type Metrics struct {
    Value []string `xml:">text"`
}
但它在输出时给了我空数组。


解决方案

您可以使用以下结构模式来解析给定的 xml。

type Results struct {
    Meta   Meta   `xml:"meta"`
    Result Result `xml:"result"`
}

type Meta struct {
    FieldOrder FieldOrder `xml:"fieldOrder"`
}

type FieldOrder struct {
    Fields []string `xml:"field"`
}

type Result struct {
    Fields []Field `xml:"field"`
}

type Field struct {
    K      string   `xml:"k,attr"`
    Values []string `xml:"value>text"`
}
工作示例:https://play.golang.org/p/H6EHl_1dPLg

本篇关于《如何将嵌套的 XML 元素解组到字符串数组中?》的介绍就到此结束啦。

有问题可以加入网站技术QQ群一起交流学习

本站会员学习、解决问题QQ群(691961965)

客服微信号:lpf010888

Title