加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Golang不使用MD5比较文件内容是否一致

发布时间:2020-12-16 19:15:34 所属栏目:大数据 来源:网络整理
导读:func compare(spath,dpath string ) bool { sinfo,err := os.Lstat(spath) if err != nil { return false } dinfo,err := os.Lstat(dpath) if { return false } sinfo.Size() != dinfo.Size() || !sinfo.ModTime().Equal(dinfo.ModTime()) { return comparef
                                                                                                     

func compare(spath,dpath string) bool { sinfo,err := os.Lstat(spath)

if err != nil {

return false

} dinfo,err := os.Lstat(dpath)

if {

returnfalse }

sinfo.Size() != dinfo.Size() || !sinfo.ModTime().Equal(dinfo.ModTime()) {

return comparefile(spath,dpath) }


{ sFile,err := os.Open(spath)

} dFile,err := os.Open(dpath)

} b := comparebyte(sFile,dFile) sFile.Close() dFile.Close()

b }


//下面可以代替md5比较.

comparebyte(sfile *os.File,dfile *os.File) {

var sbyte []byte = make([], 512)

dbyte [] serr,derr error

for { _,serr = sfile.Read(sbyte) _,derr = dfile.Read(dbyte)

if serr != || derr != if serr != derr {

}

serr == io.EOF {

break } }

if bytes.Equal(sbyte,dbyte) {

continue }

returntrue

}



查看原文:http://www.zoues.com/2016/10/20/golang%e4%b8%8d%e4%bd%bf%e7%94%a8md5%e6%af%94%e8%be%83%e6%96%87%e4%bb%b6%e5%86%85%e5%ae%b9%e6%98%af%e5%90%a6%e4%b8%80%e8%87%b4/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读