【问题标题】:Reading Text Files from Local Directory in Javascript在 Javascript 中从本地目录读取文本文件
【发布时间】:2018-01-04 19:21:31
【问题描述】:

我正在开发 Chrome 扩展程序,我想从与具有功能的 Javascript 文件位于同一目录中的文本文件中获取数据(即,以字符串形式读取文本文件并将其用于分析某种)。我对 Javascript 很陌生,所以我一直在试图弄清楚如何做到这一点——似乎 FileReader 不起作用,因为用户没有上传我正在使用的文件,而我没有确定 XML HTTPRequest 在这种情况下如何有用。谢谢!

tldr;我想以字符串的形式读取与 Javascript 文件位于同一目录中的文本文件。

更新:该文件不是来自用户文件系统的文件,而是包含扩展名的文件!因此,包含 HTML 文件和 Javascript 文件的文件夹也将包含文本文件。

【问题讨论】:

标签: javascript google-chrome-extension


【解决方案1】:

如果我错了,请有人纠正我,但据我所知,由于安全问题,这在 JavaScript 中是不可能的。

如果是这样,网页可能会在未经您同意或您不知情的情况下抓取您文件系统上的任何文件。这是一个重大的安全问题,所以我认为这是不可能的。

必须为用户提供在知情的情况下从其文件系统中选择文件的选项。

【讨论】:

  • 不是来自用户文件系统的文件,而是包含扩展名的文件!因此,包含 HTML 文件和 Javascript 文件的文件夹也将包含文本文件。
【解决方案2】:

你可以试试:

function readTextFile(file)
{
   var rawFile = new XMLHttpRequest();
   rawFile.open("GET", file, false);
   rawFile.onreadystatechange = function ()
    {       
         var allText = rawFile.responseText;
            alert(allText);

    }

 rawFile.send(null);
}

并将file://指定在与Javascript文件相同的目录中

【讨论】:

  • 我们可以这样结束这个问题吗?
【解决方案3】:

由于浏览器安全标准,您根本无法从 (HDD) 访问任何文件。

请尝试使用这个 chrome API https://developer.chrome.com/apps/app_storage#filesystem-manifest

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 2014-02-26
    相关资源
    最近更新 更多