golang中字符串MD5生成方式总结


Posted in Golang onJuly 04, 2021

方案一

func md5V(str string) string  {
    h := md5.New()
    h.Write([]byte(str))
    return hex.EncodeToString(h.Sum(nil))
}

方案二

func md5V2(str string) string {
    data := []byte(str)
    has := md5.Sum(data)
    md5str := fmt.Sprintf("%x", has)
    return md5str
}

方案三

func md5V3(str string) string {
    w := md5.New()
    io.WriteString(w, str)
    md5str := fmt.Sprintf("%x", w.Sum(nil))
    return md5str
}

整体测试代码

package main

import (
    "crypto/md5"
    "encoding/hex"
    "fmt"
    "io"
)
func main() {
    str := "MD5testing"
    md5Str := md5V(str)
    fmt.Println(md5Str)
    fmt.Println(md5V2(str))
    fmt.Println(md5V3(str))
}
// 输出结果:
f7bb96d1dcd6cfe0e5ce1f03e35f84bf
f7bb96d1dcd6cfe0e5ce1f03e35f84bf
f7bb96d1dcd6cfe0e5ce1f03e35f84bf

到此这篇关于golang中字符串MD5生成方式总结的文章就介绍到这了,更多相关golang中字符串MD5生成方式内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Golang 相关文章推荐
一文读懂go中semaphore(信号量)源码
Apr 03 Golang
golang如何去除多余空白字符(含制表符)
Apr 25 Golang
golang goroutine顺序输出方式
Apr 29 Golang
Golang 使用Map实现去重与set的功能操作
Apr 29 Golang
解决go在函数退出后子协程的退出问题
Apr 30 Golang
golang中的并发和并行
May 08 Golang
golang fmt格式“占位符”的实例用法详解
Jul 04 Golang
手把手教你导入Go语言第三方库
Aug 04 Golang
Golang Elasticsearches 批量修改查询及发送MQ
Apr 19 Golang
Golang MatrixOne使用介绍和汇编语法
Apr 19 Golang
Go语言测试库testify使用学习
Jul 23 Golang
Go gorilla securecookie库的安装使用详解
Aug 14 Golang
golang fmt格式“占位符”的实例用法详解
Jul 04 #Golang
Go语言空白表示符_的实例用法
Jul 04 #Golang
Go 语言结构实例分析
Jul 04 #Golang
Go语言基础知识点介绍
Jul 04 #Golang
详解Go语言Slice作为函数参数的使用
Jul 02 #Golang
golang 实用库gotable的具体使用
Jul 01 #Golang
试了下Golang实现try catch的方法
Jul 01 #Golang
You might like
解析php中die(),exit(),return的区别
2013/06/20 PHP
php获得url参数中具有&的值的方法
2014/03/05 PHP
深入理解PHP之源码目录结构与功能说明
2016/06/01 PHP
基于ThinkPHP实现的日历功能实例详解
2017/04/15 PHP
js脚本获取webform服务器控件的方法
2014/05/16 Javascript
jquery中each方法示例和常用选择器
2014/07/08 Javascript
如何用JS判断两个数字的大小
2016/07/21 Javascript
js改变透明度实现轮播图的算法
2020/08/24 Javascript
干货!教大家如何选择Vue和React
2017/03/13 Javascript
javascript 判断一个对象为数组的方法
2017/05/03 Javascript
微信小程序利用co处理异步流程的方法教程
2017/05/20 Javascript
JavaScript中的return布尔值的用法和原理解析
2017/08/14 Javascript
jQuery Position方法使用和兼容性
2017/08/23 jQuery
node puppeteer(headless chrome)实现网站登录
2018/05/09 Javascript
LayerClose弹窗关闭刷新方法
2018/08/17 Javascript
vueJs实现DOM加载完之后自动下拉到底部的实例代码
2018/08/31 Javascript
JS图片懒加载的优点及实现原理
2020/01/10 Javascript
jquery实现异步文件上传ajaxfileupload.js
2020/10/23 jQuery
详解python的数字类型变量与其方法
2016/11/20 Python
Python3结合Dlib实现人脸识别和剪切
2018/01/24 Python
Python Numpy 数组的初始化和基本操作
2018/03/13 Python
python实现超市扫码仪计费
2018/05/30 Python
Python中如何使用if语句处理列表实例代码
2019/02/24 Python
Python pickle模块常用方法代码实例
2020/10/10 Python
python爬取天气数据的实例详解
2020/11/20 Python
python实现MySQL指定表增量同步数据到clickhouse的脚本
2021/02/26 Python
CSS3的first-child选择器实战攻略
2016/04/28 HTML / CSS
HTML5实现视频弹幕功能
2019/08/09 HTML / CSS
HTML5自定义mp3播放器源码
2020/01/06 HTML / CSS
解决html5中的video标签ios系统中无法播放使用的问题
2020/08/10 HTML / CSS
工伤事故赔偿协议书
2014/04/15 职场文书
毕业设计论文评语
2014/12/31 职场文书
贷款工资证明范本
2015/06/12 职场文书
python如何利用traceback获取详细的异常信息
2021/06/05 Python
Android 中的类文件和类加载器详情
2022/06/05 Java/Android
HTML中link标签属性的具体用法
2023/05/07 HTML / CSS