如何在Node.js中解压缩gzip文件

时间:2017-08-07 16:41:21

标签: node.js gzip

我想在Node.js中解压缩gzip文件我尝试了[某些]软件包,但没有任何工作。你能提供一个包含示例代码的软件包,它可以解压缩Node.js中的gzip文件吗?

3 个答案:

答案 0 :(得分:6)

gunzip-file 节点包工作正常!

执行:

npm install gunzip-file

然后:

'use strict'

const gunzip = require('gunzip-file')

// 'sitemap.xml.gz' - source file
// 'sitemap.xml'    - destination file
// () => { ... }    - notification callback
gunzip('sitemap.xml.gz', 'sitemap.xml', () => {
  console.log('gunzip done!')
})

最后,在你的shell上运行Node。

答案 1 :(得分:1)

我建议使用zlib.Gunzip

函数原型是zlib.Gunzip(buf, callback)。第一个参数是要提取的raw archive data as a buffer,第二个参数是一个接受两个参数(结果和错误)的回调。

实施将是:

zlib.Gunzip(raw_data, function (error, result) {
   if (error) throw error;
   // Access data here through result as a Buffer
})

答案 2 :(得分:0)

您可以使用tar.gz npm包来解决此问题。

编写以下方法将其提取到特定路径:

targz().extract('/bkp/backup.tar.gz', '/home/myuser')
  .then(function(){
    console.log('Job done!');
  })
  .catch(function(err){
    console.log('Something is wrong ', err.stack);
  });

有关详情,请点击此link