如何使用zlib.gzipSync(buffer [,options])压缩文件,并使用zlib.gunzipSync(buffer [,options])解压缩文件?

问题描述 投票:1回答:1

大家好

我一直在学习在同步模式下使用zlib的想法,(对于我来说,成为同步模式很重要)

我已经尝试过多次并失败了,节点文档并不完全清楚,并且缺少使用示例

我打算做的是:

用于压缩包含一些数据作为文本的文本文件“ myfile.txt”作为“某些文本”,并将其另存为“ myfile.txt.gz”]

function zip(fullPathToFile){
  const zlib= require('zlib');

  //some cool stuff...using:

  zlib.gzipSync(buffer[, options])

}

用于将“ myfile.txt.gz”解压缩到“ myfile.txt”的函数

function unZip(fullPathToFile){
  const zlib= require('zlib');

  //some cool stuff...using:

  zlib.gunzipSync(buffer[, options])

}

全部在同一目录中

任何想法?

感谢您的阅读和帮助!>

大家好,我一直在讨论在同步模式下使用zlib的问题,(对于我来说,对于同步模式很重要)我已经尝试了多次并失败了,节点文档并不完全是...]]

javascript node.js gzip zlib unzip
1个回答
1
投票

我首先使用fs.readFileSync来读取文件,然后将那个Buffer(数据)作为zlib.gzipSync的第一个参数插入。随之而来的还有一个缓冲区(压缩数据)。我使用fs.writeFileSync将其写入文件。

const fs = require("fs");
const zlib = require("zlib");
function zip(path) {
    let data = fs.readFileSync(path);
    data = zlib.gzipSync(data);
    fs.writeFileSync(`${path}.gz`, data);
}
© www.soinside.com 2019 - 2024. All rights reserved.