Golang计算文件md5

问题描述

Go 语言 中,如何计算文件的 MD5 值。

分析

在 Golang 中,我们要计算一个文件的 MD5 值,我们首先需要读取文件的内容,然后计算读取的内容的 MD5 值。

Golang计算文件MD5

package main import ( "crypto/md5" "encoding/hex" "fmt" "io/ioutil" ) func strMd5(str string) (retMd5 string) { h := md5.New() h.Write([]byte(str)) return hex.EncodeToString(h.Sum(nil)) } func MD5File(file string) (string, error) { data, err := ioutil.ReadFile(file) if err != nil { return "", err } return strMd5(string(data)), nil } func main() { fmt.Println("嗨客网(www.haicoder.net)") retMd5, _ := MD5File("HelloHaicoder.go") fmt.Println("Md5 =", retMd5) }

此时,我们运行程序,控制台输出如下:

12_Go语言计算文件md5.png

我们先读取文件的内容,再次计算读取到的内容的 MD5 值。

Golang计算文件md5总结

在 Golang 中,我们要计算一个文件的 MD5 值,我们首先需要读取文件的内容,然后计算读取的内容的 MD5 值。