golang里如何判断一个目录是否存在?

吾八哥 每日一学 2019-09-15 272 0

写文件之前最好判断下目录是否存在,如果不存在则需要先创建目录,今天我们来学习golang里如何判断一个目录是否存在?使用系统自带的os包,下面直接上代码:

package main

import (
    "fmt"
    "os"
)

// PathExists ...
func PathExists(path string) (bool, error) {
    var err error
    if _, err = os.Stat(path); err == nil {
        return true, nil
    }
    if os.IsNotExist(err) {
        return false, nil
    }
    return false, err
}

func main() {
    if ok, err := PathExists("/data/17Go.wang"); ok {
        fmt.Println("存在")
        return
    } else {
        if err != nil {
            fmt.Println("返回错误:", err)
            return
        }
        fmt.Println("不存在")
    }
}

直接运行即可看到效果!如果目录不存在,创建多级目录的方法是:

err := os.MkdirAll("/data/17Go.wang",os.ModePerm)


分享:

扫一扫在手机阅读、分享本文