javascript - 使用 HTML5 在本地写入 CSV 文件

标签 javascript html csv

我想知道 HTML5 是否允许保存/写入用户文件系统中的本地文件。我问这个问题是因为我知道,使用 HTML5,您现在可以从客户端导出数据并将其下载为 CSV 文件等。

如果不使用 HTML5,覆盖内容或从客户端脚本本地创建 CSV(或任何其他类型的文件)的最佳方法是什么?

最佳答案

功能:

function exportData() {
    var data = '';
    for (var i=1;i<=2;i++) {
        var sep = '';
        for (var j=1;j<=4;j++) {
            data +=  sep + document.getElementById(i + '_' + j).value;
            sep = ',';
        }
        data += '\r\n';
    }
    var exportLink = document.createElement('a');
    exportLink.setAttribute('href', 'data:text/csv;base64,' + window.btoa(data));
    exportLink.appendChild(document.createTextNode('test.csv'));
    document.getElementById('results').appendChild(exportLink);
}

标记:

<input type="number" id="1_1" value="2">,
<input type="number" id="1_2" value="1">,
<input type="number" id="1_3" value="4">,
<input type="number" id="1_4" value="3">
<br>
<input type="number" id="2_1" value="1">,
<input type="number" id="2_2" value="2">,
<input type="number" id="2_3" value="3">,
<input type="number" id="2_4" value="4">
<br>
<button onclick="exportData()">Export as CSV</button>
<div id="results"></div>

演示:

单击按钮您将获得一个链接,单击该链接您将获得一个文件。更改值,再次单击链接,您将获得不同的文件。 Firefox 每次都让我选择 Excel 打开它,但我不知道这是我的配置问题还是一般问题。

Live Demo

Demo

引用:

Is it possible to use any HTML5 fanciness to export local storage to Excel?

关于javascript - 使用 HTML5 在本地写入 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27013963/

相关文章:

javascript - 如果没有输入 URL 则隐藏按钮

html - CSS 滤镜背景图片

javascript - 如果 Blob URL 是不可变的,Media Source Extension API 如何使用它们来流式传输视频?

Python 从 url 逐行下载大型 csv 文件,只有 10 个条目

Python读取csv文件中的3列

javascript - 在 Javascript 中从域和图像数组构造函数

javascript - 将日期转换为javascript中的特定格式?

javascript - 将模态内容打印为完整的 A4 页面

python - 使用 xlwt 将 .csv 文件中的混合数据写入 .xls - 如何格式化数字?

javascript - 不使用递归刷新javascript的函数