Golang检查、创建和清空目录教程
Golang检查、创建和清空目录
在Golang中,操作文件系统非常便捷。本教程将带你学习如何使用os.Stat、os.Mkdir和os.RemoveAll函数来检查目录是否存在、创建目录以及清空目录。
1. 检查目录是否存在
使用os.Stat函数可以获取文件或目录的信息。如果返回的错误类型为os.IsNotExist,则表示目录不存在。
package main
import (
'fmt'
'os'
)
func main() {
dirPath := 'path/to/directory'
_, err := os.Stat(dirPath)
if os.IsNotExist(err) {
fmt.Println('目录不存在:', dirPath)
} else {
fmt.Println('目录已存在:', dirPath)
}
}
2. 创建目录
使用os.Mkdir函数可以创建目录。os.ModePerm参数用于设置目录权限。
package main
import (
'fmt'
'os'
)
func main() {
dirPath := 'path/to/directory'
err := os.Mkdir(dirPath, os.ModePerm)
if err != nil {
fmt.Println('创建目录失败:', err)
return
}
fmt.Println('目录创建成功:', dirPath)
}
3. 清空目录
使用os.RemoveAll函数可以删除目录及其所有子目录和文件。
package main
import (
'fmt'
'os'
)
func main() {
dirPath := 'path/to/directory'
err := os.RemoveAll(dirPath)
if err != nil {
fmt.Println('清空目录失败:', err)
return
}
fmt.Println('目录已清空:', dirPath)
}
示例代码:
package main
import (
'fmt'
'os'
)
func main() {
dirPath := 'path/to/directory'
// 判断目录是否存在
_, err := os.Stat(dirPath)
if os.IsNotExist(err) {
// 目录不存在,创建目录
err := os.Mkdir(dirPath, os.ModePerm)
if err != nil {
fmt.Println('创建目录失败:', err)
return
}
fmt.Println('目录创建成功')
} else {
// 目录存在,清空目录
err := os.RemoveAll(dirPath)
if err != nil {
fmt.Println('清空目录失败:', err)
return
}
fmt.Println('目录已清空')
}
}
将上述示例代码中的dirPath替换为你想要操作的目录路径即可。
原文地址: https://www.cveoy.top/t/topic/fPH1 著作权归作者所有。请勿转载和采集!