package files import ( "os" ) // CheckAndCreateDir 检查文件夹是否存在,不存在则创建(包括各级父目录) func CheckAndCreateDir(dirPath string) error { // 检查文件夹是否存在 _, err := os.Stat(dirPath) if err == nil { // 文件夹已存在 return nil } // 判断错误类型是否为不存在 if os.IsNotExist(err) { // 创建文件夹,0755表示权限:所有者可读写执行,组和其他用户可读执行 // MkdirAll会递归创建所有不存在的父目录 err := os.MkdirAll(dirPath, 0755) if err != nil { return err } return nil } // 其他错误(如权限问题等) return err }