M. *_*Set 22 javascript text-files
我已经阅读了关于这个主题的一些先前的问题,但我真的需要100%肯定!
是否可以从本地系统上的.txt文件中读取并将其显示在我的HTML-BODY中?
我试过几个函数,这里有一个:
function readFile (path) {
var fso = new ActiveXObject('Scripting.FileSystemObject'),
iStream=fso.OpenTextFile(path, 1, false);
while(!iStream.AtEndOfStream) {
document.body.innerHTML += iStream.ReadLine() + '<br/>';
}
iStream.Close();
}
readFile("testing.txt");
Run Code Online (Sandbox Code Playgroud)
该文件的内容只是我想从文本文件中读取的大约100个单词,并显示在我的HTML-BODY中.
没有我自己的服务器,这可能吗?
Ami*_*nul 36
你可以使用一个FileReader对象来读取文本文件,这里是示例代码:
<div id="page-wrapper">
<h1>Text File Reader</h1>
<div>
Select a text file:
<input type="file" id="fileInput">
</div>
<pre id="fileDisplayArea"><pre>
</div>
<script>
window.onload = function() {
var fileInput = document.getElementById('fileInput');
var fileDisplayArea = document.getElementById('fileDisplayArea');
fileInput.addEventListener('change', function(e) {
var file = fileInput.files[0];
var textType = /text.*/;
if (file.type.match(textType)) {
var reader = new FileReader();
reader.onload = function(e) {
fileDisplayArea.innerText = reader.result;
}
reader.readAsText(file);
} else {
fileDisplayArea.innerText = "File not supported!"
}
});
}
</script>
Run Code Online (Sandbox Code Playgroud)
这是codepen 演示
如果每次应用程序加载时都有一个固定文件,那么您可以使用以下代码:
<script>
var fileDisplayArea = document.getElementById('fileDisplayArea');
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;
fileDisplayArea.innerText = allText
}
}
}
rawFile.send(null);
}
readTextFile("file:///C:/your/path/to/file.txt");
</script>
Run Code Online (Sandbox Code Playgroud)