electron打开系统资源管理器(该文章代码都运行在node上)
打开指定路径文件夹
const { shell } = require("electron");
const openFolder = (pathName)=>{
shell.openPath(path.join(pathName, "/"))
}
打开指定路径文件夹成功
补充:输出文件函数
class File extends Service {
constructor(ctx) {
super(ctx);
}
/**
* 生成导出文件返回文件大小
* @param filepath {string}
* @param buffer {Buffer} 文件buffer数据 对应数据库blob类型
* @param filename {string}
* @returns {Promise<number|boolean>}
*/
async outFile({ filepath, buffer, filename = "" }) {
let size = 0;
try {
size = Buffer.from(buffer).byteLength;
fs.writeFileSync(path.join(filepath, filename), buffer);
} catch (e) {
console.log(e);
return false;
}
return size;
}
}
补充:选择文件夹返回路径(可以指定目录导出)
const { dialog } = require("electron");
/**
* 选择目录返回路径
*/
const selectFolder= () => {
const filePaths = dialog.showOpenDialogSync({
properties: ["openDirectory", "createDirectory"],
});
if (_.isEmpty(filePaths)) {
return null;
}
return filePaths[0];
}