判断文件是否存在,需要用到"os"包中的两个函数: os.Stat()和os.IsNotExit()

func Stat(name string) (FileInfo, error)
  • 1.

Stat返回描述文件f的FileInfo类型值。如果出错,错误底层类型是*PathError。

func IsNotExist(err error) bool
  • 1.

返回一个布尔值说明该错误是否表示一个文件或目录不存在。

golang判断文件或文件夹是否存在的方法为使用os.Stat()函数返回的错误值进行判断:

  1. 如果返回的错误为nil,说明文件或文件夹存在
  2. 如果返回的错误类型使用os.IsNotExist()判断为true,说明文件或文件夹不存在
  3. 如果返回的错误为其它类型,则不确定是否在存在
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
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.