javascript - 使用javascript读取本地文本文件

标签 javascript

<分区>

我想从我的本地 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)' ...因为加载页面时需要自动读取文本文件。那么我怎样才能使上面的解决方案起作用呢?

阅读链接的线程,尽管该线程被标记为已解决,但看起来其他人对该解决方案也有问题。

最佳答案

以完整的 HTML 和 JavaScript 文件为例,读取客户端数据文件。客户端文件只能由 FileReader 访问,指定用户选择的文件。

<!DOCTYPE html>
<html>
    <head>
        <script type="text/javascript">
                function loadFile(o)
                {
                    var fr = new FileReader();
                    fr.onload = function(e)
                        {
                            showDataFile(e, o);
                        };
                    fr.readAsText(o.files[0]);
                }

                function showDataFile(e, o)
                {
                    document.getElementById("data").innerText = e.target.result;
                }
            </script>

        </script>
    </head>
    <body>
        Select file to read <input type="file" onchange="loadFile(this)">
        <pre id="data"></pre>
    </body>
</html>

关于javascript - 使用javascript读取本地文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42088285/

相关文章:

javascript - Service Worker 当前正在服务的页面的 URL 'fetch' 事件

javascript - 使用javascript更改ul元素的字体大小

javascript - 如何通过在单独的文件夹中构建 JS 文件并查看文件来运行 Angular 4 应用程序?

javascript - 值不会推送到数组

javascript - 翻译 API 仅转换文本部分(而不是 HTML)

javascript - Jquery 可调整大小无法与子类正常工作

javascript - 通过自动建议进行 Onclick 更新

javascript - 从框架内获取浏览器高度

javascript - 无法从 Angular 中的模板调用表单提交方法

javascript - ExtJS 4 : cloning stores