gpt4 book ai didi

xml - 在go中用xml节点名序列化int

转载 作者:IT王子 更新时间:2023-10-29 02:11:45 26 4
gpt4 key购买 nike

我正在学习一些东西,但我在控制 XML 序列化方面遇到了麻烦

我想将一个 int 序列化为 <number>1</number> ,我尝试了以下方法:

package main

import (
"fmt"
"encoding/xml"
)
type number struct {
Number int64
}

func main() {
out, _ := xml.Marshal(number{2})
fmt.Println(string(out))
}

( https://play.golang.org/p/Ac-p1q3ytZ )

但我得到 <number><Number>2</Number></number>由于其结构,它被双重包装。如果我只是序列化一个 int,我得到 <int>2</int>未正确命名。

有没有办法告诉序列化不渲染根节点,或者直接将属性放入父节点?

最佳答案

是的。根据 xml.Marshal 的文档,您可以使用标签 ",chardata" .

type number struct {
Number int64 `xml:",chardata"`
}

这会输出 <number>2</number> ,如 https://play.golang.org/p/Aoqfs04OTx 所示

关于xml - 在go中用xml节点名序列化int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44643839/

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