Node解压文件

在node中批量解压文件,并解压到对应的单独文件夹内

const  fs =require('fs-extra')
const  unzip = require("unzip-stream");
const  path=require( 'path')
		//定义自己的读取的文件路径
 let url =`${think.ROOT_PATH}/www/img/`;
      //获取文件夹所在的路径的所有下的所有文件
      let imglist = fs.readdirSync(url);
      imglist.forEach((item)=>{
          //拼接url
          let fileurl = `${url}${item}`
          //判断是否是文件夹
           let isState = fs.statSync(fileurl).isFile();
            //判断该文件夹是否存在
          // let isFile = fs.existsSync(fileurl);
          /**拿到文件名不带后缀**/
          //获取文件名称
          let filename = path.basename(fileurl);
          //获取文件后缀名称
          let extname = path.extname(fileurl);
          //拿到处理后的文件名
          let result = filename.substring(0,filename.indexOf(extname));
          /**拿到文件名不带后缀**/
           if (isState ){
               /**是文件**/
               let fileurls = `${url}${result}`;
               //判断同名文件夹是否存在
               let isEmity = fs.existsSync(fileurls);
               if (!isEmity){
                 //不存在创建文件夹
                  fs.mkdirSync(fileurls)
               }
               //解压文件,同名直接覆盖
               fs.createReadStream(`${fileurl}`).pipe(unzip.Extract({ path:`${fileurls}` }));
           }else {
           //文件夹不予处理
               console.log(item,'文件夹')
               console.log(fileurl)
           }
      })
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值