Javascript filereader使用--允许从文件访问文件打开硬编码文件名
我有一些基于用户输入加载文件的javascript:Javascript filereader使用--允许从文件访问文件打开硬编码文件名,javascript,filereader,Javascript,Filereader,我有一些基于用户输入加载文件的javascript: function openFile(event) { var input = event.target; var reader = new FileReader(); reader.onload = function () { const result = reader.result.split("base64,")[1]; // use result }; reader.readAsD
function openFile(event) {
var input = event.target;
var reader = new FileReader();
reader.onload = function () {
const result = reader.result.split("base64,")[1];
// use result
};
reader.readAsDataURL(input.files[0]);
}
我想硬编码文件名。如果我写的是文件,我会尝试
function openFile2(filename) {
var reader = new FileReader();
reader.onload = function () {
const result = reader.result.split("base64,")[1];
// use result
};
var file = new File([""], filename) // create a new file object for writing (not actually desired)
reader.readAsDataURL(file);
}
但这里我正在阅读,所以我想要一个现有的文件,而不是一个新的。我发现了几个类似的问题,其中答案断言,出于安全原因,这是不可能的:
——允许从文件访问文件的引用,这似乎是为了覆盖此安全功能。我的javascript只用于本地,所以它完全可以只在Chrome中工作,并且只使用这个选项。我的问题是,我对javascript了解不够,不知道如何创建文件对象进行读取,而且我似乎找不到关于如何创建文件对象的文档(只是断言它是被禁止的)
我的问题:
加载基于硬编码名称的文件是“禁止”的,即可以编写javascript,但浏览器不会按照指示运行它,还是“禁止”的,即javascript中不存在该命令
鉴于我的项目仅供本地使用,因此我能够选择所需的任何浏览器/启动标志组合(例如,Chrome with--允许从文件访问),从硬编码路径获取javascript文件对象(适用于filereader
)的最简单方法是什么?例如,如果不能在纯javascript中完成,我可以在html中添加一些与javascript挂钩的内容吗
不要这样做。别这样。如果这只是您自己的本地使用,请使用nodejs或其他东西。不要运行允许页面修改文件系统的浏览器。我第一次使用javascript,因为我发现一个现有项目几乎完全符合我的要求。我真的不知道使用nodejs意味着什么,但如果有一种方法不涉及重新设计轮子(即重新编写现有项目),我会接受它