我看到网上普遍都是用的fileReader,但是有一个问题就是,它好像只能通过一个input type=file的控件加载一个文件,然后用fileReader.readAsText(file)加载这个文件,在onload中实现读取。
可是我想做的就是读一个固定的文件:concatenate.txt这个文件,请问我该如何实现?我试过用FileSystemObject,但是好像很多浏览器都不支持啊,不知道该怎么办了,求助!!!
原来的我是这样做的,想要测试能否载入固定文件名的文件,但是有错误。
<!DOCTYPE>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>read local file</title>
</head>
<body>
<h3>read local file with html5</h3>
<p>考参 : http://www.jsmix.com/html5/file-reader.html</p>
<p>使用 : 在chrome测试通过,其他浏览器没测试;直接双击打开显示错误的,把它放在一个web server的目录中,通过服务器的路径,如: http://127.0.0.1/a.html 打开<p>
<input type="file" id="f1" onclick="xx();">
<hr>
<div id="content"></div>
<script>
function xx (){
var dd = document.getElementById('content');
var reader = new FileReader();
if (typeof (FileReader) == "undefined"){
dd.innerHTML = "your browser doesn't support filereader";
return;
}
var src="d:\\concatenate.txt";
var fso = new ActiveXObject("Scripting.FileSystemObject");
var f=fso.OpenTextFile(src,1,ture);
reader.onload = function (e){
dd.innerHTML += this.result;
}
reader.onerror = function (e){
dd.innerHTML = "error<br>";
}
reader.readAsText(f);
alert(f.name);
}
</script>
</body>
</html>
在客户端的,因为就是本地打开浏览器然后,以网页的方式载入的一个本地的文件。