gpt4 book ai didi

go - 解码嵌套的 OPML 文档

转载 作者:IT王子 更新时间:2023-10-29 02:15:41 34 4
gpt4 key购买 nike

我正在尝试解码一个简单的嵌套 opml 文档。当我嵌套了 opml 并且我无法决定结构时,问题就来了。我把代码放在下面。请告诉我如何解析 Outline 结构的多层嵌套。

http://play.golang.org/p/FobiL1JDdb

    package main

import (
"encoding/xml"
"fmt"
)

var response = `<opml version='1.0'>
<head>
<title>More Cases</title>
<expansionState>1,6,26</expansionState>
</head>
<body>
<outline text='Testing' _note='indeterminate'>
<outline text='Weekly' _status='indeterminate'>
</outline>
</outline>
</body>
</opml>`

type Opml struct {
XMLName xml.Name
Version string `xml:"version,attr"`
Head Head `xml:"head"`
Body Body `xml:"body"`
}

type Head struct {
Title string `xml:"title"`
ExpansionState string `xml:"expansionState"`
}

type Body struct {
Outline Outline `xml:"outline"`
}
type Outline struct {
Text string `xml:"text,attr"`
Note string `xml:"_note,attr"`
}

func main() {

fmt.Println("UnMrashal XML")
opml := &Opml{}
xml.Unmarshal([]byte(response), opml)
fmt.Println(opml)
}

最佳答案

你需要使用指针

type Outline struct {
Text string `xml:"text,attr"`
Note string `xml:"_note,attr"`
Outline *Outline `xml:"outline"`
}

http://play.golang.org/p/f1UqEkJq4S

关于go - 解码嵌套的 OPML 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32247493/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com