electronFileIO.js
const { dialog } = require('@electron/remote')
import { saveFile, electronReadFile } from "./dfhFileIO";
const filename = 's1'
const data = 'hhhhhhhhhhhhh'
const fileType = 'w'
const electronSaveFile = (file) => {
const saveParams = {
title: '保存为',
defaultPath: `${file.fileName}.${file.fileType}`,
properties: ['promptToCreate', 'createDirectory'],
filters: [{
name: file.fileType,
extensions: [file.fileType]
}],
}
dialog.showSaveDialog(saveParams).then((res) => {
if (!res.canceled) {
const data = JSON.stringify(file.data);
saveFile(res.filePath, data)
}
}).catch((err) => {
console.log(err)
})
}
const electronOpenFile = async (fileType) => {
const saveParams = {
title: '打开文件',
properties: ['openFile', 'createDirectory'],
filters: [{
name: fileType,
extensions: [fileType]
}],
}
const res = dialog.showOpenDialogSync(saveParams);
let data;
if (!!res) {
await electronReadFile(res[0]).then((res) => {
data = res;
});
return JSON.parse(data)
}
}
export {
electronSaveFile,
electronOpenFile
}