nodejs压缩和解压缩zip文件
发布于 11 年前 作者 151263 27851 次浏览 最后一次编辑是 7 年前 来自 分享

https://git.oschina.net/ccteams/hzip nodejs压缩和解压缩zip文件 替换zip文件里面的内容等 我自己写的,实际项目中在用了,没问题 可以用来操作Excel2007 或者Excel2010 我的项目中是用它来导出Excel的 纯javascript写的

var fs = require("fs");
var zlib = require("zlib");
var Hzip = require("../hzip");
var hzip = new Hzip(fs.readFileSync("./test.zip"));
//替换或增加文件
hzip.updateEntry("testDir/test.txt",fs.readFileSync("./test.txt"),function(err,buffer){
    if(err) console.log(err);
    if(fs.existsSync("./test2.zip") === true) fs.unlinkSync("./test2.zip");
    fs.writeFileSync("./test2.zip",buffer);
    //解压文件
    var entry = hzip.getEntry("testDir/test.txt");
    zlib.inflateRaw(entry.cfile,function(err,buf){
        console.log(buf.toString());
    });
});
8 回复

非常不错,谢谢楼主。另外不知道有没有基于bytes数组的zip解压模块?例如用node下载一个zip,我希望不用保存到磁盘,直接读取zip内容并解包使用。谢谢。

你的仔细看一下我的例子,已经实现了你的需求了 fs.readFileSync("./test.zip")返回的就是Buffer类,就是bytes

能介绍一下导出excel是怎么写的么

请问你发的地址为什么是404呢?无法访问,有没有npm模块?

你用Excel2007以及以上的版本,新建立一个Excel,然后在上面随便写点东西, 然后改Excel的后缀名,从.xlxs改为.zip,然后再用好压解压开,里面会有很多xml文件, 一个个打开用Notepad++看一下,格式化美化一下xml,你就明白了 其中有一个shareString.xml文件里面是你刚刚输入进去的东西

google搜索一下 openXml

@151263 听上去不错,放出来撒~

回到顶部