javascript - 在 HTML 中加载 CSV 自动加载相同的文件
问题描述
上面的“html”代码选择 CSV 文件并加载,但有什么方法可以更改为在刷新 C:\File.csv 时自动加载相同的 CSV 文件
<script>
window.onload = function () {
var datasource = document.getElementById('datasource');
datasource.addEventListener('change', function (e) {
var csvFile = datasource.files[0];
var fileReader = new FileReader();
fileReader.onloadend = function (e) {
var table = document.getElementById('table');
var lines = fileReader.result.split(/\r?\n/);
var n = 0;
lines.forEach(function (line) {
n++;
var tr = document.createElement("tr");
tr.setAttribute("class", "row");
tr.setAttribute("id", "row_" + n);
var cells = line.split(/,/);
var m = 0;
cells.forEach(function (cell) {
var td = document.createElement("td");
m++;
td.setAttribute("id", "cell_" + n + "-" + m);
td.setAttribute("class", "cell");
var text = document.createTextNode(cell);
td.appendChild(text);
tr.appendChild(td);
});
table.appendChild(tr);
});
}
fileReader.readAsText(csvFile);
}, false);
}
</script>
Select CSV file:
<input type="file" id="datasource" />
<div>Table with loaded CSV file:</div>
<table id="table" class=table></table>
上面的“html”代码选择 CSV 文件并加载,但有什么方法可以更改为在刷新 C:\File.csv 时自动加载相同的 CSV 文件
解决方案
TLDR;不,这是不可能的。
网页不能只选择从用户的计算机中读取任何文件,浏览器不会允许它,因为那将是一场安全噩梦。浏览器将只允许您访问从文件输入弹出窗口中选择或拖放到文件输入中的文件。
推荐阅读
- linux - 为什么这个 kernel_write-call 会崩溃?
- azerothcore - 命令 .ticket 视图不显示任何内容
- javascript - 为什么 JavaScript 中原始类型的对象不能作为引用传递,但类似对象的数组可以?
- git - “从索引中检出文件”是什么意思?
- sql-server - Microsoft SQL Server 2012 将恰好两个相邻行的数据合并为一行
- django - EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' ^ SyntaxError: EOL while scanning string literal
- python - cloudera 主节点中的 pyspark-shell 命令失败,错误=13,python 虚拟环境的权限被拒绝
- junit - 使用 EasyMock 模拟静态字段
- python - Python Selenium:通过 CSS 属性查找元素
- javascript - javascript转换失败