gpt4 book ai didi

go - Xml 解码失败

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

我正在尝试将简单的 Xml 架构解码为结构。如果我在我的任何 Xml 节点值中找到 ,似乎会失败。

读取 Xml 文件会导致运行时错误。读取 Xml 字符串会导致丢失所有其他内容

样本:http://play.golang.org/p/waNn_1NpD1

package main

import (
"encoding/xml"
"fmt"
)

const (
s = `<?xml version="1.0" encoding="UTF-8"?>
<feed>
<product>
<description>
TEST VALUE sdfsdfsdfsdfsd TEST VALUE sdfsdfsdfsdfsd TEST VALUE sdfsdfsdfsdfsd TEST VALUE sdfsdfsdfsdfsd &#031;
</description>
<sku>ABCDD!@#</sku>
</product>
</feed>`
)

type (
Feed struct {
XMLName xml.Name `xml:"feed"`
Product Product `xml:"product"`
}

Product struct {
XMLName xml.Name `xml:"product"`
Description string `xml:"description"`
SKU string `xml:"sku"`
}
)

func main() {
fmt.Println("Hello, playground")
b := []byte(s)
var feed Feed
xml.Unmarshal(b, &feed)
fmt.Println(feed.Product.Description)
fmt.Println(feed.Product.SKU)
}

最佳答案

不要忽视你的错误

您输入的数据无效。

xml.Unmarshal 如果失败则返回一个error。用这个替换你的电话:

if err != nil {
fmt.Println(err)
}

...显示:

XML syntax error on line 6: illegal character code U+001F

从您的输入中删除  使其工作。

See it on the Go Playground

关于go - Xml 解码失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28419396/

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