JSZip库的简单使用

 

 

JSZip

jszip是一个用于创建、读取和编辑.zip文件的JavaScript库,且API的使用也很简单。

安装
npm install jszip

需用到jszip/dist下的jszip.min.js文件以及jszip/vendor下的FileSaver.js文件

引入

将js文件放到jszip文件夹下

 <script src="jszip/jszip.min.js"></script>
 <script src="jszip/FileSaver.js"></script>><!--用于文件下载-->
官方示例
var zip = new JSZip();
zip.file("Hello.txt", "Hello World\n");
var img = zip.folder("images");
img.file("smile.gif", imgData, {base64: true});
zip.generateAsync({type:"blob"})
.then(function(content) {
    // see FileSaver.js
    saveAs(content, "example.zip");
});
  • 创建一个JSZip实例:
var zip = new JSZip();
  • 使用.file(fileName,fileContent)添加一个txt文件
zip.file("Hello.txt", "Hello World\n");
  • 使用.folder(folderName)添加一个文件夹
var img = zip.folder("images");
  • 使用.file(fileName,fileContent,base64FLag)在文件夹下添加一个图片文件
img.file("smile.gif", imgData, {base64: true});

注:fileContent可以是File文件也可以是Blob二进制数据

  • 生成一个zip文件
zip.generateAsync({type:"blob"})
.then(function(content) {
    // see FileSaver.js
    saveAs(content, "example.zip");
});

type:"blob" 压缩的结果为二进制流,可用作文件上传
saveAs(content, "example.zip"); 直接在浏览器打成example.zip包并下载,saveAs依赖的js是FileSaver.js

posted @ 2021-09-16 13:47  威武的大萝卜  阅读(2863)  评论(0编辑  收藏  举报