使用javascript读取.txt文件

时间:2016-04-28 21:45:40

标签: javascript html

你能在javascript中用代码中的文件路径读取txt文件吗?不是从打开的文件窗口中选择文件。

2 个答案:

答案 0 :(得分:1)

如果文本文件位于本地或私人电脑上

如您所知,如果您可以阅读存储在用户文件系统中的文本文件,那么每个人都可以窃取私人数据,所以简而言之不能

如果您的文本文件在您的服务器上

<强> AJAX

function ajax(a,b,c){ // Url, Callback, just a placeholder
 c=new XMLHttpRequest;
 c.open('GET',a);
 c.onload=b;
 c.send()
}

使用方法:

ajax('http://YOURSERVER/yourtextfile.txt',function(){
 alert(this.response);
});

more about the above function

如果您的文本文件位于其他服务器上

当您托盘访问其他服务器并使用ajax you need to be allowed访问该文件时。一些网站允许它返回

Access-Control-Allow-Origin: *

在响应heaeders.so上面的ajax函数将正常工作。

然后还有其他方法可以从您或其他服务器获取数据,而不是ajax:

websockets&amp; SSE ..但那些需要特定的界面,如php或nodejs。

另一种选择是文件是否在您的私人电脑上,并且您只想在每次更新时发送一些存储在特定文本文件中的数据:

只需安装nodejs或免费的PHP服务器并创建某种cron作业,以便每隔一段时间检查一个特定的文件夹。更新文件后,只需将其发送到您的在线服务器即可。同样,在线主机至少需要PHP ASP或某种服务器端脚本。

答案 1 :(得分:0)

您可以使用XHR(XML Http Request)。以下是阅读&#39; .txt&#39;文件。您可以在 html 文件中使用 NodeJS Python简单服务器或您使用的任何其他服务器运行简单服务器很舒服。

1 如果你有python:

python -m SimpleHTTPServer 8000

2 示例(readtxt.html):

<script type="text/javascript">
var request = new XMLHttpRequest();
request.open('GET', 'filename.txt', false);  // `false` => synchronous request
request.send(null);

if (request.status === 200) {
  console.log(request.responseText);
}
</script>

3 打开:     http://localhost:8000/readtxt.html

4 检查浏览器控制台,查看从txt文件中读取的内容。

您可以阅读此内容以获取更多详细信息,

https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/Synchronous_and_Asynchronous_Requests#Asynchronous_request