golang中判断文件是否存在
作者:互联网
// 如果数据库目录不存在,则新建一个
if _, err := os.Stat(dirPath); os.IsNotExist(err) { if err := os.MkdirAll(dirPath, os.ModePerm); err != nil { return nil, err
}
}
在阅览别人代码时对上述第一个语句产生疑问,因为os.Stat返回的是一个FileInfo用于描述文件,若err == nil 不就说明文件存在吗,为什么还需要os.IxNotExist(err)再进行一次判断。
后发现是因为err!=nil有两种意义
golang判断文件或文件夹是否存在的方法为对os.Stat() 函数返回的错误值进行判断:
- 如果返回的错误为nil,说明文件或文件夹存在
- 如果返回的错误类型使用os.IsNotExist() 判断为true,说明文件或文件夹不存在
- 如果返回的错误为其它类型,则不确定是否在存在
TRANSLATE with x English TRANSLATE with COPY THE URL BELOW Back EMBED THE SNIPPET BELOW IN YOUR SITE Enable collaborative features and customize widget: Bing Webmaster Portal Back
标签:文件,Stat,判断,err,nil,golang,location,os 来源: https://www.cnblogs.com/JJJJJJz/p/16425763.html