96编辑器旗下产品
找图
终身
ID:0
到期时间:永久
退出登录
您的位置:首页 > 百科管理 > 详情

nodejs 压缩文件-nodejs zlib 怎么把几个压缩过的文件解压拼接

原创:找图网 2023-05-03 06:27:14
  • 如何用nodejs压缩文件,生成tar包

  • 你好,

    我不知道如何直接使用代码逻辑生成tar包,但我可以给你提供一个使用调用Linux命令生成tar包的方法。

    首先,在npm中有一个叫做shelljs的包,在项目中安装它:

    npm i --save shelljs

    然后,在执行打包任务的js文件中使用它:

    var shell = require('shelljs');

    if (('tar -zvcf 文件名. 被打包的文件(夹)').code !== 0) {

      ('Error: ...');

      (1);

    }

    这样就可以在当前目录生成一个“文件名.”的

    压缩包

    了,而“文件名”和“被打包的文件(夹)”都可以通过参数的形式进行传递。

    好了,更多信息可以github上搜索shelljs,希望能解决你的问题。

  • nodejs压缩服务器无法解压

  • 1、首先执行代码:xz -d 。

    2、其次该目录下会产生一个 文件。

    3、最后解压tar -xvf 即可。

  • nodejs zlib 怎么把几个压缩过的文件解压拼接

  • 我请求管用所结束httpvar http = require("http"),

    zlib = require("zlib");

    function getGzipped(url, callback) {

    // buffer to store the streamed decompression

    var buffer = [];

    (url, function(res) {

    // pipe the response into the gunzip to decompress

    var gunzip = ();

    (gunzip);

    ('data', function(data) {

    // decompression chunk ready, add it to the buffer

    (())

    }).on("end", function() {

    // response and decompression complete, join the buffer and return

    callback(null, (""));

    }).on("error", function(e) {

    callback(e);

    })

    }).on('error', function(e) {

    callback(e)

    });

    }

    getGzipped(url, function(err, data) {

    (data);

    });

    2. 尝试添加encoding: null给传递给选项request避免载体转换字符串并保持二进制缓冲区

    3. 工作示例(使用节点请求模块)gunzips响应function gunzipJSON(response){

    var gunzip = ();

    var json = "";

    ('data', function(data){

    json += ();

    });

    ('end', function(){

    parseJSON(json);

    });

    (gunzip);

    }

    全码:

    4. 像@Iftah说设置encoding: null 完整例(少错误处理):request = require('request');

    zlib = require('zlib');

    request(url, {encoding: null}, function(err, response, body){

    if(['content-encoding'] == 'gzip'){

    (body, function(err, dezipped) {

    callback(());

    }

    } else {

    callback(body);

    }

    });

    最新文章 更多
    最新素材 更多
    公司介绍 网站地图 图片资讯
    Copyright © 2010-2022 山东找图网络科技有限公司  鲁ICP备18007836号-3  邮箱:15653358549@163.com