在没有服务器的情况下使用Javascript进行文件操作,如读/写本地文件
我只是在尝试这个任务,使用java脚本的文件操作系统。正如我在W3C文件API()中提到的,我们只能读取本地文件,如在没有服务器的情况下使用Javascript进行文件操作,如读/写本地文件,javascript,html,fileapi,local-files,Javascript,Html,Fileapi,Local Files,我只是在尝试这个任务,使用java脚本的文件操作系统。正如我在W3C文件API()中提到的,我们只能读取本地文件,如 var file = "test.txt"; function readTextFile(file) { var readFile; if(window.XMLHttpRequest){ // for new browsers readFile = new XMLHttpRequest(); }else{ //for
var file = "test.txt";
function readTextFile(file) {
var readFile;
if(window.XMLHttpRequest){
// for new browsers
readFile = new XMLHttpRequest();
}else{
//for old browsers like IE5 or IE6
readFile = new ActiveXObject("Microsoft.XMLHTTP");
}
readFile.open("GET", file, true);
readFile.onreadystatechange = function() {
if(readFile.readyState === 4) {
if(readFile.status === 200 || readFile.status == 0) {
//text will be displayed that read from the file
console.log(readFile.responseText);
}
}
}
readFile.send(null);
}
但在没有服务器的情况下,似乎没有写入文件的选项。我曾试图从网站上获取解决方案,比如,研究表明几乎没有任何可能性
举个例子,我得到的是
从
它显示错误“TypeError:file.open不是函数。”
所以我的问题是,是否有可能在不使用服务器端脚本的情况下对本地文件进行文件操作(只询问写文件),或者是否有类似的扩展名可用?
我们可以使用PHP、Node.js等服务器脚本语言进行文件操作
提前感谢。在您的代码中,它不是从本地文件(
test.txt
)读取,而是向服务器发送AjaxGET
请求并在服务器端读取文件
要读取本地文件(存储在安装了浏览器的计算机中的文件),需要使用FileAPI,而当前代码中未使用该API
要将文件写入本地,不可能直接使用JavaScript编写。否则,这将是一个巨大的安全漏洞。但是,您可以从文件对象生成URL,并通过“本地文件”将该URL用作
的href
属性,您是指安装浏览器的计算机上的文件吗?或者,您是指服务器计算机上的文件吗?是的,我指的是安装浏览器的计算机上的文件@少川。当然,上面给出的代码在服务器端工作。但是我们可以在本地进行。但是在您的代码中,您发送了GET
Ajax请求来读取服务器端的文件。是的,但是您的意思是以POST
Ajax请求的形式编写代码吗@我已经尝试过FileAPI(上面已经提到),但是我只能从本地文件中读取。如果您需要编写任何程序来写入本地文件,请在此处编写代码@少川。感谢@少川先生的宝贵努力。