结构体转换为xml:

type Person struct {
XMLName xml.Name `xml:"person"`
Name string `xml:"name"`
Age int `xml:"age"`
Email string `xml:"email"`
} func main() { person := Person{
Name: "tom",
Age: 20,
Email: "tom@gmail.com",
}
//MarshalIndent函数中第二参数设置一级标题(<person>)空一格,第三个参数设置二级标题(<name>等)空二格
b, _ := xml.MarshalIndent(person, " ", " ")
fmt.Printf("%v\n", string(b))
}

  返回结果:

xml转换为go对象

type Person struct {
XMLName xml.Name `xml:"person"`
Name string `xml:"name"`
Age int `xml:"age"`
Email string `xml:"email"`
} func main() { s := `
<person>
<name>tom</name>
<age>20</age>
<email>tom@gmail.com</email>
</person>
` b := []byte(s)
var per Person
//Unmarshal第一个参数传递一个字节数组,第二个参数要设置为取地址,而且为一个对象
xml.Unmarshal(b, &per)
fmt.Printf("per: %v\n", per)
}

 返回结果:

go_xml_learn的更多相关文章

随机推荐

  1. WPF开发经验-实现自带触控键盘的TextBox

    一 引入 项目有个新需求,当点击或触碰TextBox时,基于TextBox的相对位置,弹出一个自定义的Keyboard,如下图所示: 二 KeyboardControl 先实现一个自定义的Keyboa ...

  2. 云原生虚拟网络 tun/tap & veth-pair

    云原生虚拟网络 tun/tap & veth-pair 转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com/archives/684 ...

  3. 图片 css剪切,等比例缩放

    object-fit: cover; .img1 {//自定义图片宽高,并且等比例缩放 width: 200px; height: 400px; object-fit: cover; }

  4. Java程序设计(五)作业

    题目1:Lisa正在编写一个能够计算三科--数学.英语.程序设计基础--平均成绩(平均成绩=三科总成绩/3)和智育成绩(智育成绩=三科总成绩*0.7)的程序.由于两个成绩的获得都要先计算总成绩,因此她 ...

  5. PHP全栈开发(八):CSS Ⅶ 表格 style

    表格默认是没有边框的,因此,我们在设置表格格式的时候,首先要设置的是表格边框的样式,也就是 table{ border-style:solid; } 设置完表格表格的样式之后,可以设置表格边框的粗细程 ...

  6. PTA2021 跨年挑战赛部分题解

    7-1 压岁钱 不用说 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int maxn ...

  7. 聊聊Linux中CPU上下文切换

    目录 什么是CPU上下文 CPU上下文切换 上一任务的CPU上下文保存在哪? 进程上下文切换 内核空间和用户空间 top命令查看CPU资源 系统调用 进程上下文切换 和 系统调用的区别? 进程切换的常 ...

  8. 洛谷P3810 陌上花开 (cdq)

    最近才学了cdq,所以用cdq写的代码(这道题也是cdq的模板题) 这道题是个三维偏序问题,先对第一维排序,然后去掉重复的,然后cdq分治即可. 为什么要去掉重复的呢?因为相同的元素互相之间都能贡献, ...

  9. golang开发一个简单的grpc

    0.1.索引 https://waterflow.link/articles/1665674508275 1.什么是grpc 在 gRPC 中,客户端应用程序可以直接调用不同机器上的服务器应用程序上的 ...

  10. Debian玩红警2

    Debian玩红警2 1. 安装wine sudo apt update sudo apt install wine wine --version wine-5.0.3 (Debian 5.0.3-3 ...