Electron 如何修改和删除 ASAR 文件内容
Electron可以通过fs直接读取asar里面的内容,但是读取了asar文件里面的数据后asar资源就被占用了,无法删除asar内容:文件。如果需要修改或删除asar文件里面的内容,需要先将asar文件解压缩到本地文件系统上,再进行操作。可以使用asar模块提供的解压缩函数进行解压缩操作。示例代码如下:
const asar = require('asar');
const path = require('path');
// 解压缩asar文件到本地文件系统
asar.extractAll(path.join(__dirname, 'app.asar'), path.join(__dirname, 'app'));
// 修改本地文件系统上的文件内容
// ...
// 将修改后的文件重新打包成asar文件
asar.createPackage(path.join(__dirname, 'app'), path.join(__dirname, 'app.asar'));
需要注意的是,解压缩asar文件和重新打包成asar文件可能会花费较多的时间和磁盘空间,需要根据实际情况进行权衡。
原文地址: https://www.cveoy.top/t/topic/nWUt 著作权归作者所有。请勿转载和采集!