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()写入内容
  • 相关阅读:
    IntelliJ IDEA 编译方式介绍
    IntelliJ IDEA 缓存和索引介绍和清理方法
    无线鼠标没反应了
    L1-039 古风排版 (20 分)
    L1-043 阅览室 (20 分)
    数学思想
    输入
    2018年湘潭大学程序设计竞赛 E 吃货
    问题 1936: [蓝桥杯][算法提高VIP]最大乘积
    指针 链表
  • 原文地址:https://www.cnblogs.com/benlightning/p/4343745.html
Copyright © 2011-2022 走看看