关于nodejs unzipper解压有密码zip很慢的问题
function unZipmi(zipPath, extractPath, password) {
unzipper.Open.file(zipPath).then((d) => {
return new Promise((resolve, reject) => {
for (i = 0; i < d.files.length; i++) {
const file = d.files[i]; console.log(file)
const tmpFilePath = extractPath + "/" + iconv.decode(file.pathBuffer, 'gbk');
if (file.type == "File") {
d.files[i].stream(password)
.pipe(fs.createWriteStream(tmpFilePath))
.on('finish', () => resolve(tmpFilePath))
.on('error', reject);
} else if (file.type == "Directory" && !fs.existsSync(tmpFilePath)) {
fs.mkdirSync(tmpFilePath);
}
}
})
}).then((path) => {
console.log('file(s) written to ' + path);
}).catch((e) => {
console.log('error while processing archive', e);
});
}
unZipmi('./un.zip', './temp', "abc123");
这是解压有密码zip文件的代码,想在NW.js里应用,但发现几十兆的文件超级慢,在官方文档里也没发现其它方法,不知有大神用过解压加密压缩包的方法。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
兄弟解决了吗
请问楼主,又找到解决方案么?