electron解压缩
1.unzip
网上看了文档看了例子,很简单的几句话,貌似挑不出毛病,但是我一写就报错
var fs = require("fs");
var unzip = require("unzip");fs.createReadStream('archiver-unzip.zip').pipe(unzip.Extract({ path: 'unarchive' }));
我一运行,就报错,primordials is not defined
折腾了一天没折腾出来
2.adm-zip
于是我问了我的同事,发现我同事用的adm-zip
用法如下:
var adm_zip = require('adm-zip');//extracting archives
var unzip = new adm_zip('adm/adm-archive.zip'); unzip.extractAllTo("adm/adm-unarchive/", /*overwrite*/true);
感人至深,成功了。
开发步骤
1.第一个桌面应用:
自行参考:https://electronjs.org/docs/tutorial/first-app
2.实现拖拽
3.实现解压
文档结构:
实现拖拽:
index.html
<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title></title><style>#holder {border: 10px dashed #ccc;/* width: 300px; */height: 300px;margin: 20px auto;}#holder.hover {border: 10px dashed #333;}</style><script>//Same as $(document).ready();function ready(fn) {if (document.readyState != 'loading') {fn();} else {document.addEventListener('DOMContentLoaded', fn);}}//When the page has loaded, run this codeready(function() {// prevent default behavior from changing page on dropped filewindow.ondragover = function(e) {e.preventDefault();return false};// NOTE: ondrop events WILL NOT WORK if you do not "preventDefault" in the ondragover event!!window.ondrop = function(e) {e.preventDefault();return false};var holder = document.getElementById('holder');holder.ondragover = function() {this.className = 'hover';return false;};holder.ondragleave = function() {this.className = '';return false;};holder.ondrop = function(e) {e.preventDefault();for (var i = 0; i < e.dataTransfer.files.length; ++i) {console.log(e.dataTransfer.files[i].path);}return false;};});</script></head><body><div id="holder"></div><button id="jieya">abc</button></body>
</html>
实现解压缩:
var test = document.getElementById("jieya");test.onclick = function() {var adm_zip = require('adm-zip');var unzip = new adm_zip('abc.zip'); unzip.extractAllTo("adm-unarchive/", /*overwrite*/true);}
运行之后,完美解压缩
仅是示例,如有疑问,自行解决
electron解压缩相关推荐
- electron 解压zip_如何在Electron Framework中提取.zip文件的内容(解压缩)
本文概述 必须先将其解压缩, 然后才能开始实际使用zip文件中的内容(文件).在本文中, 你将学习如何使用Electron Framework和decompress-zip模块解压缩.zip文件. 要 ...
- electron 解压zip_如何将Node.js中的.zip/.rar文件解压缩到文件夹中
的解压与目录结构的zip文件内袋 var Zip = require('machinepack-zip'); //解压缩指定的.zip文件和写解压缩的文件/目录作为指定的目标目录的内容. Zip.un ...
- electron 解压zip_node.js实现简单的压缩/解压缩功能示例
本文实例讲述了node.js实现简单的压缩/解压缩功能.分享给大家供大家参考,具体如下: 压缩的例子 非常简单的几行代码,就完成了本地文件的gzip压缩. var fs = require('fs') ...
- 使用Electron制作一个快速搜索应用(入门向)
什么是Electron Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库. Electron通过将Chromium和Node.js合并 ...
- Electron应用-云桌面客户端
文章目录 云桌面初认识: 3v融合端三大特性,十大亮点: Electron 简介: 术语: 主进程与渲染进程的区别: 进程之间的通信: Electron API: 主进程的部分模块解析: 渲染进程的部 ...
- electron打包的一些问题
1.打包配置 在vue.config.js中 pluginOptions: {electronBuilder: {builderOptions: {win: {icon: './public/app. ...
- Electron介绍
1 Electron 快速入门 简介 Electron 可以让你使用纯 JavaScript 调用丰富的原生 APIs 来创造桌面应用.你可以把它看作是专注于桌面应用而不是 web 服务器的,io.j ...
- Electron那些事05:保护源码asar
[前言] 回顾之前的章节Electron那些事02:打包_uikoo9的博客-CSDN博客 打包应用这里还有一个优化点,本节来优化一下 [对比Electron应用] 对比几个electron应用的文件 ...
- 如何解压electron的app.asar
目录 一.描述: 二.解压步骤: 一.描述: 目前打包electron的项目时,发现打包出的压缩包有点大,查看npm run build里面的build文件夹,发现是app.asar文件比较大, (a ...
最新文章
- 数组遍历 map()、forEach() 及 字符串切割 split() / 字符串截取 slice()、substring()、substr()...
- jvm监控jstatd使用
- navicat 或者workbench 无法连接127.0.0.1(61)的解决方法
- 项目学生:带有Jersey的Web服务客户端
- mysql 实现计数器_MySQL实现计数器的表设计及实现
- 微信消息模板配置文档对接himall
- H3C下一代防火墙介绍及开局指导培训答疑汇总
- java毕向东helloworld_毕向东java基础课学习笔记2——Hello world
- 豆瓣上的一条关于泰坦尼克的影评5
- VINS-MONO概述
- Pygame游戏编程
- 删除桌面上出现无文件名图标的方法
- Consul 集群单节点与多节点
- Rviz中控制机器人模型运动(arbotix)
- Android程序员该如何进阶学习以预防35岁中年职场危机?
- Elasticsearch 第二天
- 帆软决策系统后台中左上角的这个logo和名字如何修改?
- Java入门之~Java基础语法
- js中的强制类型转换和进制数表达
- K8s安全管理:认证、授权、准入控制
热门文章
- fabric roles
- 【GDUT】5C还是5S
- 统信UOS系统格式化U盘方法
- 解决小程序开发:未找到 app.json 中的定义的 pages “pages/index/index“ 对应的 WXML 文件
- 最新i7编译android源码,编译ROC-RK3328-CC Android7.1源码教程
- 做后台是选择Java 、Go ,还是 PHP?
- 怎么能更好的学习html
- 架构设计:系统间通信(1)——概述从“聊天”开始上篇
- 我在北京花1000租了独卫,真香!坚决不回老家!
- java开源自然语义识别_自然语义处理