JavaScript在线解压 ZIP 文件 JavaScript 怎样在线解压 ZIP,jszip实现解压压缩包,并下载压缩包内文件
JSzip解压压缩包、下载压缩包内文件
废话不多说,直接上代码
1、所需物料准备
1、jszip.min.js 仓库地址:https://github.com/Stuk/jszip
CDN地址:https://cdn.bootcdn.net/ajax/libs/jszip/3.10.0/jszip.min.js
2、FileSaver.min.js 仓库地址:https://github.com/eligrey/FileSaver.js
CDN地址:https://cdn.bootcdn.net/ajax/libs/FileSaver.js/2.0.5/FileSaver.min.js
2、准备好所需物料后废话不多说,可以上代码了
<body><input id="uploadFile" type="file" onchange="changeFile()" /><script src="https://cdn.bootcdn.net/ajax/libs/jszip/3.10.0/jszip.min.js"></script><script src="https://cdn.bootcdn.net/ajax/libs/FileSaver.js/2.0.5/FileSaver.min.js"></script><script>function changeFile() {const uploadFileEle = document.querySelector("#uploadFile");let file = uploadFileEle.files[0];JSZip.loadAsync(file).then((res) => {console.log(res.files);res.forEach((ele, obj) => {if (!obj.dir) {//判断是否为文件/**转换成Base64方式,根据需求引用let binary = '';let bytes = obj._data.compressedContent;for (let index = 0; index < bytes.length; index++) {const element = bytes[index];binary += String.fromCharCode(element);}binary = window.btoa(binary);*/// 压缩包内文件名称let fileName = obj.name;//压缩包内文件大小let unsize = obj._data.uncompressedSize / 1024;let fileSize = unsize.toFixed(2) + "KB";//下载操作let base = res.file(obj.name).async('blob');base.then(rr => {saveAs(rr, obj.name);})}})})}</script>
</body>
3、温馨提示
1、代码可自行复制测试,下载操作根据实际需求更改即可
2、上述代码文件上传没做类型限制,本人在测试过程中发现:.apk,.zip,.rar可读取包内文件。.7z是不支持的哇
3、如压缩包内文件命名为中文是,解压出来文件名可能显示乱码,下载后重命名即可。
JavaScript在线解压 ZIP 文件 JavaScript 怎样在线解压 ZIP,jszip实现解压压缩包,并下载压缩包内文件相关推荐
- bash脚本 文件_如何使用Bash脚本来管理从AWS S3存储桶下载和查看文件
bash脚本 文件 As you can read in this article, I recently had some trouble with my email server and deci ...
- 优雅的使用tg机器人自动下载频道内文件
笔记本出问题了,现在没法继续写我的自动下载机器人了 于是在GitHub找到了一个同样好用的机器人源码 脚本需要python3.6以上环境,具体安装教程自行搜索. 测试环境 Ubuntu 18.04.5 ...
- java读取zip文件名_java无需解压zip压缩包直接读取包内的文件名(含中文)
java自带了java.util.zip工具可以实现在不解压zip压缩包的情况下读取包内文件的文件名:(注:只能是ZIP格式的,rar我试了不行)代码如下: public static String ...
- 怎么设置internet才能下载JAVA_如何使用Java从Internet下载和保存文件?
我需要获取一个在线文件(例如http://www.example.com/information.asp )并将其保存到目录中. 我知道有几种逐行捕获和读取在线文件(URL)的方法,但是有没有一种方法 ...
- python web项目导出zip文件_通过javascript在网页端生成zip压缩包并下载
zip.js是什么 通过zip.js封装一个能在网页端生成zip文件的插件, 直接在网页中创建包含文件夹和文件的压缩包,也可以自定义名字并下载: 如何使用: 1:引用zip.js 2:引用jQuery ...
- java zip压缩 加密码_java 压缩成zip文件、解压zip文件(可设置密码)
1.情景展示 java实现将文件夹进行压缩打包的功能及在线解压功能 2.解决方案 方式一:压缩.解压zip 准备工作:slf4j-api.jar org.slf4j slf4j-api 1.7.25 ...
- vue前台导出zip文件_在Vue.js中使用JSZip实现在前端解压文件的方法_心病_前端开发者...
1.在 action="//jsonplaceholder.typicode.com/posts/" :before-upload="handleBefore" ...
- python zipfile压缩的文件用shell命令解压_Python学习第177课——bzip2、zip方式压缩文件和解压文件...
之前我们学习了tar打包.解包.gzip压缩,现在我们学习gzip解压. ●gzip解压 现在我们把上节生成的压缩文件linux_compressed.gz进行解压,使用命令: tar -xzf li ...
- linux+shell+解压命令,Shell命令 文件压缩解压缩之gzip、zip详解
本篇文章的主要内容讲述的是shell命令中之文件压缩解压缩之gzip.zip,具有一定参考价值,感兴趣的朋友可以了解一下,希望对你有所帮助. 1.gzip:gzip压缩工具 gzip命令的功能说明: ...
- linux中zip文件编码错误,解决linux下zip文件解压乱码问题
原标题:解决linux下zip文件解压乱码问题 解决linux下zip文件解压乱码问题 原因 由于zip格式并没有指定编码格式,Windows下生成的zip文件中的编码是GBK/GB2312等,因此, ...
最新文章
- Dubbo原码解析(version:2.5.3)
- Android第十期 - 百度地图
- LoadRunner中添加weblogic监视器(JMX)
- OpenCV 发起 Spatial AI挑战赛
- CCNA2.0笔记_ACL
- c++语言中如果调用函数时,需要改变实参或者返回多个值,应该采取,C++综合练习题2...
- 浅谈SkyEye虚拟ECU
- 如何对报表的参数控件赋值
- 【笔试/面试】—— Linux(块设备与字符设备/cron 和 crontab)
- android之camera2预览
- 农村三资管理平台app_农村三资管理系统功能
- oracle基本操作语句大全
- classes是什么意思怎么读_class是什么意思_class的翻译_音标_读音_用法_例句_爱词霸在线词典...
- 毕业设计_Android短信查询及加密系统_短信查询
- python txt文本转json格式
- SpringBoot 统一功能处理
- android实习日志_【安卓开发实习生工作总结_安卓开发实习生个人年终总结】-看准网...
- 漏洞扫描的原理与应用
- 6级20190601
- MTK9652处理器怎么样