第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何將嵌套的 XML 元素解組為數(shù)組?

如何將嵌套的 XML 元素解組為數(shù)組?

Go
慕勒3428872 2021-12-07 15:03:06
我的 XML 包含一組預(yù)定義元素,但我無(wú)法獲取該數(shù)組。這是 XML 結(jié)構(gòu):var xml_data = `<Parent>                   <Val>Hello</Val>                   <Children>                      <Child><Val>Hello</Val></Child>                      <Child><Val>Hello</Val></Child>                      <Child><Val>Hello</Val></Child>                   </Children>                </Parent>`這是完整的代碼,這是操場(chǎng)鏈接。運(yùn)行此命令將獲取 Parent.Val,但不會(huì)獲取 Parent.Children。package mainimport (    "fmt"    "encoding/xml")func main() {    container := Parent{}    err := xml.Unmarshal([]byte(xml_data), &container)    if err != nil {        fmt.Println(err)    } else {        fmt.Println(container)      }}var xml_data = `<Parent>                   <Val>Hello</Val>                   <Children>                      <Child><Val>Hello</Val></Child>                      <Child><Val>Hello</Val></Child>                      <Child><Val>Hello</Val></Child>                   </Children>                </Parent>`type Parent struct {    Val string    Children []Child}type Child struct {    Val string}編輯:我在這里稍微簡(jiǎn)化了這個(gè)問(wèn)題?;旧衔也荒芙饨M任何數(shù)組,而不僅僅是預(yù)定義的結(jié)構(gòu)。以下是更新后的工作代碼。在該示例中,只有一項(xiàng)最終出現(xiàn)在容器界面中。func main() {    container := []Child{}    err := xml.Unmarshal([]byte(xml_data), &container)    if err != nil {        fmt.Println(err)    } else {        fmt.Println(container)      }    /*         ONLY ONE CHILD ITEM GETS PICKED UP    */}var xml_data = `            <Child><Val>Hello</Val></Child>            <Child><Val>Hello</Val></Child>            <Child><Val>Hello</Val></Child>        `type Child struct {    Val string}
查看完整描述

2 回答

?
慕姐4208626

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊

type Parent struct {

    Val string

    Children []Child  `xml:"Children>Child"`  //Just use the '>'

}


查看完整回答
反對(duì) 回復(fù) 2021-12-07
?
慕俠2389804

TA貢獻(xiàn)1719條經(jīng)驗(yàn) 獲得超6個(gè)贊

對(duì)于這種嵌套,您還需要一個(gè)Children元素結(jié)構(gòu):


package main


import (

    "fmt"

    "encoding/xml"

)


func main() {


    container := Parent{}

    err := xml.Unmarshal([]byte(xml_data), &container)


    if err != nil {

        fmt.Println(err)

    } else {

        fmt.Println(container)  

    }

}


var xml_data = `<Parent>

            <Val>Hello</Val>

            <Children>

                <Child><Val>Hello</Val></Child>

                <Child><Val>Hello</Val></Child>

                <Child><Val>Hello</Val></Child>

            </Children>

        </Parent>`


type Parent struct {

    Val string

    Children Children

}


type Children struct {

    Child []Child

}


type Child struct {

    Val string

}

也貼在這里:去游樂(lè)場(chǎng)


請(qǐng)注意,您的代碼可以使用這種 XML 結(jié)構(gòu)(在將變量名從 更改Children為 之后Child):


<Parent>

    <Val>Hello</Val>

    <Child><Val>Hello</Val></Child>

    <Child><Val>Hello</Val></Child>

    <Child><Val>Hello</Val></Child>

</Parent>


查看完整回答
反對(duì) 回復(fù) 2021-12-07
  • 2 回答
  • 0 關(guān)注
  • 266 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)