美文网首页
Golang文件校验器

Golang文件校验器

作者: JetLu | 来源:发表于2015-07-23 15:30 被阅读264次
  • 代码:

    package main
    
    import "io"
    import "os"
    import "fmt"
    import "crypto/md5"
    import "crypto/sha1"
    
    func main() {
        if (len(os.Args) < 3) {
            fmt.Printf("usage: check [md5|sha1] file\n\n")
            fmt.Printf("  %4s: %s\n", "md5", "计算文件md5值")
            fmt.Printf("  %4s: %s\n", "sha1", "计算文件sha1值")
            return
        }
        f, err := os.Open(os.Args[2])
        if err != nil {
            fmt.Printf("Sorry, file open failed\n")
            return
        }
        buf := make([]byte, 1024 * 1024 * 16 * 16)
        switch os.Args[1] {
            case "md5":
                h := md5.New()
                for {
                    n, err := f.Read(buf)
                    h.Write(buf[:n])
                    if err == io.EOF {
                        break
                    }
                }
                fmt.Printf("%x\n", h.Sum(nil))
            case "sha1":
                h := sha1.New()
                for {
                    n, err := f.Read(buf)
                    h.Write(buf[:n])
                    if err == io.EOF {
                        break
                    }
                }
                fmt.Printf("%x\n", h.Sum(nil))
            default :
                fmt.Printf("参数有误\n")
        }
    }
    
  • 编译运行:


    run.jpg

相关文章

  • Golang文件校验器

    代码:package mainimport "io"import "os"import "fmt"import "...

  • Golang 正则表达式

    参考golang之正则校验golang正则使用总结

  • 乱七八糟的基础知识

    JAVA编译过程 源文件—>java编译器—>字节码文件—>(类装载器—>字节码校验器—>解释器)—>系统平台 字...

  • Angular2+ 表单校验器的使用

    校验器逻辑定义: 校验器的使用: LIST 校验器: 其他校验器 HTML 中的使用 样式:

  • 校验器

    数据通过校验器校验,如果校验不通过,拦截器抛出错误,校验器下面的代码就不能继续执行。 拓展:校验器负责数据校验,拦...

  • Arch Linux 安装

    下载 1.中国的网络镜像站 感谢各高校提供网络服务器 2.文件校验 下载文件后请进行HASH校验以确保镜像文件不被...

  • structs2校验器无法运行

    structs2 校验器 分为字段校验器和非字段校验器字段校验器具体格式如下

  • JVM知识精粹

    1.jvm执行字节码文件 流程:jvm通过类加载器加载字节码文件----字节码校验器---翻译字节码(解释执行,反...

  • struts-5:校验(validate)

    1、校验的方式 a、自动校验:通过xml文件进行校验:xml文件的命名是"要校验的action+-validati...

  • 表单校验——校验响应式表单

    表单校验 Angular的校验器 angular提供了一组预定义的校验器,这些校验器都是定义在angular的fo...

网友评论

      本文标题:Golang文件校验器

      本文链接:https://www.haomeiwen.com/subject/cpzpqttx.html