Electron如何手动将数据存储到默认缓存目录
Electron 写入文件到默认缓存目录方案
你可以直接通过 Electron 内置的 app.getPath() 接口直接获取缓存目录路径,不需要自己硬编码不同系统的路径规则,接口会自动适配当前运行的操作系统返回你提到的对应系统路径。
具体实现步骤
- 第一步:在主进程中调用
app.getPath('cache')获取当前应用的缓存目录路径,注意这个接口不能在渲染进程直接调用,要是需要在渲染进程用可以通过预加载脚本(preload)暴露对应方法。 - 第二步:用 Node.js 原生的
fs模块(或者fs/promises异步版本)对获取到的路径做读写操作即可。
代码示例
// 主进程代码示例 const { app } = require('electron') const fs = require('fs/promises') const path = require('path') async function saveFileToCache(fileName, content) { // 获取缓存目录路径 const cacheDir = app.getPath('cache') // 拼接得到完整的目标文件路径,如果需要写入到electron子目录,可在cacheDir后再加一层electron路径 const targetPath = path.join(cacheDir, fileName) // 写入文件,传入Buffer即可存储二进制内容 await fs.writeFile(targetPath, content) return targetPath } // 调用示例 saveFileToCache('test.bin', Buffer.from('待存储的二进制内容'))
注意事项
- 这个缓存目录是系统级别的缓存目录,系统在磁盘空间不足的时候可能会自动清理该目录下的文件,不要把需要持久化保存的重要数据存在这里。
- 写入前建议先判断目标目录是否存在,不存在的话先调用
fs.mkdir创建目录,避免写入失败。
内容的提问来源于stack exchange,提问作者doobean
相关产品推荐
相关产品推荐

