Golang语言之JSON md5
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Golang语言之JSON md5相关的知识,希望对你有一定的参考价值。
package main
import (
"encoding/json" //自带的json工具
"fmt"
)
//github.com/pquerna/ffjson/ffjson
// 这个json工具,比自带的json效率要高很多
// 而且接口,完全一样,
type worker struct {
Name string `json:"worker_name"` //转换成json格式时,key就是worker_name
Sex string
salay int32 //注意,json时,不会对这个属性操作,因为salay是小写
}
func main() {
// 1、对数组形式,进行编码
x := [5]int{1, 2, 3, 4, 5}
bytes, e := json.Marshal(x)
if e != nil {
panic(e)
}
fmt.Println(string(bytes)) //[1,2,3,4,5]
// 2、对map类型,进行json
var stu = map[string]string{}
stu = make(map[string]string)
stu["name"] = "beijing"
stuJson, err := json.Marshal(stu)
if err != nil {
panic(err)
}
fmt.Println(string(stuJson)) //{"name":"beijing"}
// 3、对struct对象进行JSON格式 编码
wk := worker{
Name: "xiaozhang",
Sex: "male",
salay: 34,
}
wrJson, err2 := json.Marshal(wk)
if err2 != nil {
panic(err2)
}
fmt.Println(string(wrJson)) //{"worker_name":"xiaozhang","Sex":"male"}
// 4、对wrJson进行解码
var w interface{} //声明一个interface, 用于存储解码后的值
json.Unmarshal(wrJson, &w)
fmt.Printf("---json格式解码---->%v", w) //map[worker_name:xiaozhang Sex:male]
}
==================================
package main
import (
"crypto/md5"
"fmt"
)
//注意,md5是不逆的
//md5的格式,基本上是一样的
//使用时,按照下面的格式,copy就可以了。
func main() {
Md5Inst := md5.New()
Md5Inst.Write([]byte("admin"))
Result := Md5Inst.Sum([]byte(""))
fmt.Printf("%x
", Result)
}
以上是关于Golang语言之JSON md5的主要内容,如果未能解决你的问题,请参考以下文章
json [Golang] golang #golang #snippets中有用的片段
golang的xorm如何将[]map[string][]byte 格式的数据序列化成json输出
编程实践使用golang 解析json字符串代码 / 使用 golang 实现一个HashSet / 使用C语言实现KMP算法,并加上非常详尽的注释。