Javascript 使用electron在本地保存文件

Javascript 使用electron在本地保存文件,javascript,forms,npm,electron,Javascript,Forms,Npm,Electron,我有一些模板文件,每个模板文件都包含几个变量字符串,我想用Electron()构建一个非常简单的输入表单,我想将合成的输出文件保存在用户的计算机上 是否有任何模块可以让Electron在本地保存文件?如果您针对多个平台,我回答。基本上,在将文件保存到正确的位置时非常有用,而与操作系统无关 您可能还想查看这些Nodejs包,它们有助于简化将文件直接保存到主机的过程 如果您打算让用户保存文件,您还可以查看可以为此专门调用的位置。示例代码是: const fs = require('fs')

我有一些模板文件,每个模板文件都包含几个变量字符串,我想用Electron()构建一个非常简单的输入表单,我想将合成的输出文件保存在用户的计算机上


是否有任何模块可以让Electron在本地保存文件?

如果您针对多个平台,我回答。基本上,在将文件保存到正确的位置时非常有用,而与操作系统无关

您可能还想查看这些Nodejs包,它们有助于简化将文件直接保存到主机的过程

如果您打算让用户保存文件,您还可以查看可以为此专门调用的位置。

示例代码是:

const fs = require('fs');
try { fs.writeFileSync('myfile.txt', 'the text to write in the file', 'utf-8'); }
catch(e) { alert('Failed to save the file !'); }
当然,您可以在变量中存储文件名和内容名

这将把内容保存在当前工作目录中的
myfile.txt
(您可以通过
process.cwd()
)中。如果你想写,比如说在用户的主目录中,你可以使用这个函数。

const{dialog}=require('electron').remote;
var fs=需要('fs');
导出默认值{
方法:{
保存:函数(){
变量选项={
标题:“保存文件”,
默认路径:“我的文件名”,
按钮标签:“保存”,
过滤器:[
{name:'txt',扩展名:['txt']},
{name:'所有文件',扩展名:['*']}
]
};
showsavedilog(null,选项)。然后({filePath})=>{
fs.writeFileSync(文件路径,“hello world”,“utf-8”);
});
},
}
}

?@Zen有没有办法用一个命令创建多个目录(即
path/dir
path/dir2
,…),或者是循环
mkdir
的唯一方法?我使用app.getAppPath创建了一个文件。不允许您在承载您的electron应用程序的文件夹中创建文件。此文件应保存到何处?似乎对我不起作用。如何定义保存文件的特定路径你是什么意思?如果像我一样指定相对路径,它将保存在当前目录下给定的路径上(例如
C:\MyIncredibleFolder\myfile.txt
)。如果您给出一个绝对路径,它将按照您给出的确切路径保存文件。此外,如果您想知道您给出的相对路径将产生什么结果,可以打印
require('path')的结果。join(process.cwd(),“my/relative/path.txt”)
这会引发更多问题,然后它会回答。