(Go)13.判断文件或者目录是否存在

Posted lvcisco

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(Go)13.判断文件或者目录是否存在相关的知识,希望对你有一定的参考价值。

判断文件或者目录是否存在,如果目录不存在,则创建


package main

import (
    "fmt"
    "os"
)

func main() {
    path := "d:/test.txt"
    b, err := PathExists(path)
    if err != nil {
        fmt.Printf("PathExists(%s),err(%v) ", path, err)
    }
    if b {
        fmt.Printf("path %s 存在 ", path)
    } else {
        fmt.Printf("path %s 不存在 ", path)
        err := os.Mkdir(path, os.ModePerm)
        if err != nil {
            fmt.Printf("mkdir failed![%v] ", err)
        } else {
            fmt.Printf("mkdir success! ")
        }
    }
}

/*
   判断文件或文件夹是否存在
   如果返回的错误为nil,说明文件或文件夹存在
   如果返回的错误类型使用os.IsNotExist()判断为true,说明文件或文件夹不存在
   如果返回的错误为其它类型,则不确定是否在存在
*/
func PathExists(path string) (bool, error) {

    _, err := os.Stat(path)
    if err == nil {
        return true, nil
    }
    if os.IsNotExist(err) {
        return false, nil
    }
    return false, err
}
 

 

以上是关于(Go)13.判断文件或者目录是否存在的主要内容,如果未能解决你的问题,请参考以下文章

Go文件操作

Go文件操作

判断文件是否存在的shell脚本代码!

Go-文件目录操作分类详解(创建打开关闭读取写入判断等)

noi1_13_41[判断元素是否存在]

shell判断文件是不是存在