【发布时间】:2017-06-24 14:31:01
【问题描述】:
我想从我的本地 html 文件中读取一个本地文本文件,因此我尝试遵循此线程 Javascript - read local text file 中的解决方案,但建议的解决方案也不适用于我:
function readTextFile(file)
{
var rawFile = new XMLHttpRequest();
rawFile.open("GET", file, false);
rawFile.onreadystatechange = function ()
{
if(rawFile.readyState === 4)
{
if(rawFile.status === 200 || rawFile.status == 0)
{
var allText = rawFile.responseText;
alert(allText);
}
}
}
rawFile.send(null);
}
当我调用函数readTextFile("file:///D:/test/text.txt"); 时,firebug 中没有显示任何错误,但也没有显示任何警报。我使用 Windows 和 Firefox 51.0.1(64 位)。
我不想将函数FileReader() 与按钮<input type='file' onchange='openFile(event)' ... 结合使用,因为在加载页面时需要自动读取文本文件。那么我怎样才能使上面的解决方案起作用呢?
阅读链接的线程似乎其他人对该解决方案也有问题,尽管该线程被标记为已解决。
【问题讨论】:
-
一切都保存在我的电脑上。尽管线程被标记为已解决,但阅读其他人也无法解决问题。
-
为什么不使用 FileReader 和相关的 API?我以前用过,效果很好。
-
“尽管线程被标记为已解决,但阅读其他人也无法解决问题” – 这不会改变其他讨论的基本结果是:您不能随便读取本地文件,因为那将是一个巨大的安全问题。您需要用户交互才能让他们先选择文件。
标签: javascript