nodejs中递归删除文件夹

/*
 * 递归函数实现删除目录及子目录及文件
 * 思路:
 * 1) 给一个参数:是文件夹
 * 2) 定义递归函数 del
 * 3) 查看文件夹里面有没有子目录或文件
 * fs.readdirSync()
 * 4) 判断是否有子目录或子文件夹,如果有:
 * 遍历数组,判断是不是文件或目录
 * stats=fs.statSync('文件路径')
 * stats.isFile()
 * 5) 如果是文件,就删除
 * fs.unlinkSync()
 * 6) 如果是目录,调用自己(递归入口)
 * 7) 删除空目录
 * fs.rmdirSync()
 * 
 * 注意:不能使用异步方式,因为要递归
 */


var fs=require('fs');


function del(p){
var arr=fs.readdirSync(p);


for(var i in arr){
//读取文件信息,以便于判断是否是一个文件或目录
var stats=fs.statSync(p+'/'+arr[i]);


if(stats.isFile()){
//判断为真,是文件则执行删除文件
fs.unlinkSync(p+'/'+arr[i]);
}else{
//判断为假就是文件夹,就调用自己,递归的入口
del(p+'/'+arr[i]);
}
}
//删除空目录
fs.rmdirSync(p);
}


del('./111');
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值