记录下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
}