go 读取文件夹所有文件并生成md5 字符串
为文件生成MD5字符串
func CreateMd5(filename string, md5str *string) { f, err := os.Open(filename) if err != nil { fmt.Println("Open", err) return } defer f.Close() md5hash := md5.New() if _, err := io.Copy(md5hash, f); err != nil { fmt.Println("Copy", err) return } md5hash.Sum(nil) *md5str = fmt.Sprintf("%x", md5hash.Sum(nil))}
读取文件夹下面的所有文件,为其创建md5字符串并存入redis
func GetFileName(dir string, redisClient redis.Conn) { var md5str string //获取指定文件下的所有文件 err := filepath.Walk(dir, func(path string, info os.FileInfo, err error) error { if err != nil { return err } //去除子文件夹 if info.IsDir() == false { //调用上面CreateMd5函数,为每个文件创建MD5,这里的path就是给定目录下的文件的绝对路径 CreateMd5(path, &md5str) //把MD5sr存入redis _, err = redisClient.Do("HSET", "XzWxClientMd5Sign", path, md5str) if err != nil { log.Println("Set key err: ", err) } } return nil }) if err != nil { log.Println(err) }}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。