Electron实践(三)—— 使用打开文件对话框和保存文件对话框选择文件路径

上一节我们使用node.js的文件服务打开和保存文件,现在我们看如何使用electron的对话框来选择本地文件。可以在主进程操作electron的对话框,如果在渲染进程操作,需要使用remote访问主进程,代码是这样的:

const {dialog} = require('electron').remote;

然后,就可以启动对话框选择文件了,启动打开对话框的代码如下:

 let options = {
        title : "打开文件", 
        defaultPath : "",
        buttonLabel : "打开",
        filters :[
         {name: '文本文件', extensions: ['txt']},
         {name: 'All Files', extensions: ['*']}
        ],
        properties: ['openFile']
       }
 let files=dialog.showOpenDialogSync( options);

这里使用的是同步打开,如果使用异步方法,可以使用showOpenDialog,后面加回调函数。还有需要注意的是返回的是数组,下面是打开文件的代码:

if(file&&file.length>0)
            fs.readFile(file[0], 'utf8', function (err, data) {
                console.log(data);
            });

保存文件与打开文件类似,只是返回的是文件路径,不是数组了。代码如下:

let file=dialog.showSaveDialogSync(
        {
            filters :[
                {name: 'Text', extensions: ['txt']},
                {name: 'All Files', extensions: ['*']}
               ],
               properties: ['saveFile']
        }
    );
        console.log(file);
    if(file)
        fs.writeFile(file, txt.value, function (err) {
            if(err) alert(err);
            else alert("保存成功");
        });
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容