微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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,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\n\n",Result)
}

原文地址:https://www.jb51.cc/go/187069.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐