一:.go创建目录两种方法
1、创建单层目录
mkdir(name,perm)权限
dir:="./mkdir" err:=os.Mkdir(dir,0777) if err != nil { fmt.Println("create dir is error") }
2、创建多层目录
path:="./aa/bb/cc" err:=os.MkdirAll(path,0777) if err != nil { fmt.Println("create is error") }
3.根据时间创建目录
uploadifle:="./upload/file/"+time.Now().Format("2006/01/02/") _,err:=os.Stat(uploadifle) if err!= nil { os.MkdirAll(uploadifle,0777) }
二:.go重命名目录和删除目录
oldPath:= "upload" newPath:="newupload" err:=os.Rename(oldPath,newPath) if err != nil { fmt.Println(err) } path:="newupload" err:=os.Remove(path)//如果是递归目录,删除失败 err:=os.RemoveAll(path) //是否递归目录一次性全部删除 if err != nil { fmt.Println("is error") }
三:遍历目录
func main(){ path:="./upload_walk/upload"+time.Now().Format("2006/01/02") _,err:= os.Stat(path) if err != nil { os.MkdirAll(path,0777)//创建目录 } rootpath:="./upload_walk" filepath.Walk(rootpath,readdir) } func readdir(path string, f os.FileInfo, err error) error{ fmt.Println(path) return nil }