Go语言JSON与Byte[]转化

记录下JSON与byte[]转化的操作,先来试试不存到文件的,当然要试试保存文件的,这样就可以保存配置信息了,JSON只是一种方式,XML的操作方法很类似,至于其他的方式以后再研究。
 
package main

import (
    "fmt"
    "encoding/json"
)

func main() {
    m := Message{"测试", "测试序列化",false}
    b, _ := json.Marshal(m)//将json对象序列化为byte[]
    var ki Message
    json.Unmarshal(b,&ki)//将序列化的byte[]重写反序列化为对象。
    fmt.Println(b)//打印序列化的byte[]    
    fmt.Println(ki)//打印对象的信息
    fmt.Println(ki.Name)//打印具体的信息
}
type Message struct {
    Name string
    Body string
    State bool
}
上面的例子可以看出JSON与byte[]转化很简单,序列化后的是byte[],可以用于很多处理的.接下来将byte[]保存到文件. 不过保存的文件是json的内容.
package main

import (
    "fmt"
    "encoding/json"
    "io/ioutil"
)

func main() {
    m := Message{"测试", "测试序列化",false}
    b, _ := json.Marshal(m)
    ioutil.WriteFile("vt.dat", b, 0644)//保存数据到文件
    bi, _ := ioutil.ReadFile("vt.dat")//从文件取出数据
    var ki Message
    json.Unmarshal(bi,&ki)
    fmt.Println(ki.Name);//打印信息
    
}
type Message struct {
    Name string
    Body string
    State bool
}
原文地址:https://www.cnblogs.com/damir/p/2486520.html