删除文件或空目录
Go 的 os.Remove() 函数可以删除文件和空目录。但是,它不能删除非空目录,如果尝试删除非空目录会返回错误。
// 删除文件或空目录
// path: 要删除的文件或目录的完整路径
// 返回: 删除是否成功 (true: 成功, false: 失败)
func DeleteFile(path string) bool {
err := os.Remove(path)
if err != nil {
bridge.PrintLog(fmt.Sprintf("Error: 删除文件 %s 失败: %v", path, err))
return false
}
return true
}
删除指定路径的文件或目录
使用 os.RemoveAll() 递归删除整个目录树
// 函数用于删除指定路径的文件或目录(空目录和非空目录)
// 参数:
// path: 要删除的文件或目录的路径
// 返回值:
// bool: 删除成功返回 true,失败返回 false
func DeleteFile(path string) bool {
// 首先尝试直接删除
err := os.Remove(path)
if err == nil {
return true
}
// 如果是目录,尝试递归删除
if os.IsNotExist(err) {
bridge.PrintLog(fmt.Sprintf("Error: 路径 %s 不存在", path))
return false
}
// 检查是否为目录
info, err := os.Stat(path)
if err != nil {
bridge.PrintLog(fmt.Sprintf("Error: 获取路径 %s 信息失败: %v", path, err))
return false
}
if info.IsDir() {
err = os.RemoveAll(path)
if err != nil {
bridge.PrintLog(fmt.Sprintf("Error: 删除目录 %s 失败: %v", path, err))
return false
}
return true
}
bridge.PrintLog(fmt.Sprintf("Error: 删除文件 %s 失败: %v", path, err))
return false
}
清空目录
删除目录下的所有文件和子目录,但保留目录本身。
// 清空指定目录下的所有内容(包括文件和子目录),但保留目录本身
// 参数:
// dirPath: 要清空的目录路径
// 返回值:
// bool: true表示清空成功,false表示清空失败
func ClearDirectory(dirPath string) bool {
// 读取目录内容
entries, err := os.ReadDir(dirPath)
if err != nil {
bridge.PrintLog(fmt.Sprintf("Error: 读取目录 %s 失败: %v", dirPath, err))
return false
}
// 遍历并删除每个条目
for _, entry := range entries {
fullPath := dirPath + string(os.PathSeparator) + entry.Name()
var err error
if entry.IsDir() {
// 如果是目录,递归删除
err = os.RemoveAll(fullPath)
} else {
// 如果是文件,直接删除
err = os.Remove(fullPath)
}
if err != nil {
bridge.PrintLog(fmt.Sprintf("Error: 删除 %s 失败: %v", fullPath, err))
return false
}
}
return true
}
lua清空目录
下面是懒人精灵清空目录的方法
-- 清空目录内的全部文件(依赖存储权限,无权限会报错Permission denied)
for file in lfs.dir(savepath) do
if file ~= '.' and file ~= '..' then
print('删除文件 ' .. savepath .. file)
delfile(savepath .. file)
end
end
1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
飞云脚本圈: 586333520
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 【懒人精灵】go语言删除文件或者目录的几种方法
飞云脚本圈: 586333520

Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 【懒人精灵】go语言删除文件或者目录的几种方法