我不明白为什么我需要在图片中有第二个条件。有没有可能是一个不存在的错误?表达式是什么
"_, err = os.Stat(fp)"
做什么?
// Stat returns a FileInfo describing the named file. // If there is an error, it will be of type *PathError.
它是表达式"_,err = os. Stat(fp)"的解释
gopyfrb31#
PathError有一个字段Error,可以是ErrNotExist,因为PathError实现了方法Unwrap,所以可以用惯用法检查:
PathError
Error
ErrNotExist
Unwrap
_, err := os.Stat(p) if err != nil { notExist := errors.Is(err, fs.ErrNotExist) // ... }
1条答案
按热度按时间gopyfrb31#
PathError
有一个字段Error
,可以是ErrNotExist
,因为PathError
实现了方法Unwrap
,所以可以用惯用法检查: