如何使用 Javascript FileReader() 打开本地文件
How to open a local file with Javascript FileReader()
我想修改 this code 使其仅适用于特定文件,但我无法找出正确的 URL 参数和我找到的所有代码示例使用文件选择对话框。
<!DOCTYPE html>
<html>
<head>
<title>reading file</title>
<script type="text/javascript">
var reader = new FileReader();
function readText(that){
if(that.files && that.files[0]){
var reader = new FileReader();
reader.onload = function (e) {
var output=e.target.result;
//process text to show only lines with "@":
output=output.split("\n").filter(/./.test, /\@/).join("\n");
document.getElementById('main').innerHTML= output;
};//end onload()
reader.readAsText(that.files[0]);
}//end if html5 filelist support
}
</script>
</head>
<body>
<input type="file" onchange='readText(this)' />
<div id="main"></div>
</body>
为什么当我更改代码时它不起作用:
<body>
<input type="file" onchange='readText(this)' />
<div id="main"></div>
</body>
至:
<body onload="readText('file:///C:/test.txt')">
<div id="main"></div>
</body>
由于安全限制,浏览器不提供此类功能。您不能读取本地文件,直到用户不会 select 文件对话框中的特定文件 select (或者不会通过拖放来执行此操作)。这就是为什么所有代码示例都使用文件 selection 对话框。
更多详情Does HTML5 allow you to interact with local client files from within a browser
我想修改 this code 使其仅适用于特定文件,但我无法找出正确的 URL 参数和我找到的所有代码示例使用文件选择对话框。
<!DOCTYPE html>
<html>
<head>
<title>reading file</title>
<script type="text/javascript">
var reader = new FileReader();
function readText(that){
if(that.files && that.files[0]){
var reader = new FileReader();
reader.onload = function (e) {
var output=e.target.result;
//process text to show only lines with "@":
output=output.split("\n").filter(/./.test, /\@/).join("\n");
document.getElementById('main').innerHTML= output;
};//end onload()
reader.readAsText(that.files[0]);
}//end if html5 filelist support
}
</script>
</head>
<body>
<input type="file" onchange='readText(this)' />
<div id="main"></div>
</body>
为什么当我更改代码时它不起作用:
<body>
<input type="file" onchange='readText(this)' />
<div id="main"></div>
</body>
至:
<body onload="readText('file:///C:/test.txt')">
<div id="main"></div>
</body>
由于安全限制,浏览器不提供此类功能。您不能读取本地文件,直到用户不会 select 文件对话框中的特定文件 select (或者不会通过拖放来执行此操作)。这就是为什么所有代码示例都使用文件 selection 对话框。
更多详情Does HTML5 allow you to interact with local client files from within a browser