介绍
今天就跟大家聊聊有关怎么在节点。js中使用zlib模块对数据进行压缩和解压缩,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
一、通过创建转换流,对文件进行压缩和解压
const fs =,要求(& # 39;fs # 39;); const zlib =,要求(& # 39;zlib # 39;); const path =,要求(& # 39;path & # 39;); function gzip (src)美元,{ fs.stat才能(src,美元,function (呃,,统计数据),{ ,,,if (stats.isFile ()), { ,,,,,let rs =, fs.createReadStream (src); ,,,,,//zlib.createGzip()创建一个gzip转换流,是一个可读可写流。 ,,,,,//通过管道将数据读取出来写入gzip流,然后又通过管道写入一个文件流中 ,,,,,dst 美元;=,path.join (__dirname, path.basename (src), +, & # 39; . gz # 39;); ,,,,,rs.pipe (zlib.createGzip ()) .pipe (fs.createWriteStream (dst)美元); ,,,} ,,}); } function ungzip (src)美元,{ fs.stat才能(src,美元,function (呃,,统计数据),{ ,,,if (stats.isFile ()), { ,,,,,let rs =, fs.createReadStream (src); ,,,,,//zlib.createGunzip()创建一个gunzip转换流 ,,,,,dst 美元;=,path.join (__dirname, path.basename (src美元,& # 39;. gz # 39;)); ,,,,,rs.pipe (zlib.createGunzip ()) .pipe (fs.createWriteStream (dst)美元); ,,,} ,,}); }//压缩文件 gzip (& # 39;。/1. txt # 39;);//解压文件 ungzip (& # 39;。/1. txt.gz& # 39;);
zlib.createDeflate()和zlib.createInflate()的使用方法与上面类似,这里就不作演示了。
二、调用zlib方法对数据进行压缩与解压
const zlib =,要求(& # 39;zlib # 39;); let data =, & # 39;你好,& # 39;;//参数一表示要压缩的数据,可以是字符串或缓冲区 zlib.gzip(数据,function (呃,,缓冲区),{ if 才能;(错),{ ,,,console.log(错); ,,}//缓冲就才能是压缩后的数据 console.log才能(buffer.toString ());//才能对缓冲区数据进行解压 zlib.unzip才能(缓冲,function (呃,,缓冲),{ ,,,console.log (buffer.toString ()); ,,}); });
看完上述内容,你们对怎么在node . js中使用zlib模块对数据进行压缩和解压缩有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。