1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| package utils
|
| import (
| "crypto/md5"
| "fmt"
| "io/ioutil"
| "os"
| "runtime"
| )
|
| func Md5sum(filepath string) (string, error) {
| f, err := os.Open(filepath)
| if nil != err {
| return "", err
| }
| defer f.Close()
|
| payload, err := ioutil.ReadAll(f)
| if nil != err {
| return "", err
| }
|
| md5sum := fmt.Sprintf("%x", md5.Sum(payload))
| runtime.GC()
|
| return md5sum, nil
| }
|
|