NodeJS解压出现中文文件名乱码

使用unzip解压出现下面的问题

更换了另外一个解压库yauzl

var fs = require('fs')
var path = require('path');
var yauzl = require("yauzl");

yauzl.open("abc.zip", {lazyEntries: true}, function(err, zipfile) {
  if (err) throw err;
  zipfile.readEntry();
  zipfile.on("entry", function(entry) {
    if (/\/$/.test(entry.fileName)) {
      if(!fs.existsSync(path.join(__dirname,entry.fileName))){
        fs.mkdirSync(path.join(__dirname,entry.fileName));
      }
      zipfile.readEntry();
    } else {
      zipfile.openReadStream(entry, function(err, readStream) {
        if (err) throw err;
        readStream.on("end", function() {
          zipfile.readEntry();
        });
        readStream.pipe(fs.createWriteStream(path.join(__dirname,entry.fileName)));
      });
    }
  }).on("close",function(){
    console.log("解压完成");
  });
});

 

posted on 2019-05-29 19:09  凡一二三  阅读(2086)  评论(1编辑  收藏  举报