zoukankan      html  css  js  c++  java
  • golang 标准库io/ioutil,读取文件,生成临时目录/文件

    1.读取目录

    list, err := ioutil.ReadDir("DIR")//要读取的目录地址DIR,得到列表
    if err != nil {
        fmt.Println("read dir error")
        return
    }
    for _, info := range list { //遍历目录下的内容,获取文件详情,同os.Stat(filename)获取的信息
        info.Name()//文件名
        info.Mode()//文件权限
        info.Size()//文件大小
        info.ModTime()//文件修改时间
        info.Sys()//系统信息
        if info.IsDir() == true {
            fmt.Println("是目录")
        }
    }

    2.读取文件

    data, err := ioutil.ReadFile("DIR/FILENAME")
    if err != nil {
        fmt.Println("read error")
        return
    }
    fmt.Println(string(data))

    3.创建临时目录(os.TempDir()返回的是操作系统的temp目录)

    dir, err := ioutil.TempDir("DIR", "tmp") //在DIR目录下创建tmp为目录名前缀的目录,DIR必须存在,否则创建不成功
    if err != nil {
        fmt.Println("临时目录创建失败")
        return
    }
    fmt.Println(dir)  //生成的目录名为tmpXXXXX,XXXXX为一个随机数

    4.创建临时文件

    file, error := ioutil.TempFile("DIR", "tmp")//在DIR目录下创建tmp为文件名前缀的文件,获得file文件指针,DIR必须存在,否则创建不成功
    defer file.Close()
    if error != nil {
        fmt.Println("文件创建失败")
        return
    }
    file.WriteString("insert into file") //利用file指针的WriteString()写入内容
  • 相关阅读:
    大数据开发速查表
    静态图像介绍
    get请求如何传递数组参数
    Redis 6.0 新增功能
    JVM 出现 StackOverflowError和OutOfMemoryError的可能
    golang超级mapper包
    dotnet vs java vs go
    [翻译]Jupyter notebook .NET Core 内核预览1
    .NET Core到底有多强?
    .net core 运行时事件(Runtime Events)
  • 原文地址:https://www.cnblogs.com/benlightning/p/4343745.html
Copyright © 2011-2022 走看看