如何使用 javascript 创建一个 Excel 文件?
How to create Create an Excel File with javascript?
我想知道是否可以创建一个 Excel 文件并使用 javascript 从网页下载它?
目前,我成功创建了一个 .csv 文件并使用以下代码下载了它:
var blob = new Blob([csvText], { type: 'text/csv;charset=UFT-8;' });
var link = document.createElement("a");
if (link.download !== undefined) { // feature detection
// Browsers that support HTML5 download attribute
var url = URL.createObjectURL(blob);
link.setAttribute("href", url);
link.setAttribute("download", "file.csv");
link.style.visibility = 'hidden';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
我想知道 javascript 中是否有任何库允许将文件从 csv 格式转换为 xlsx 格式并使其以与 csv 相同的方式下载?
最终目的是在下载的xlsx中设置模板。
有几个选项
https://github.com/stephenliberty/excel-builder.js
另一个 github 项目 Excel 选项较少,但对 Excel 兼容性问题的担忧较少,可在此处找到:ExcellentExport.js
https://github.com/jmaister/excellentexport
是的,您可以使用 sheetJS 创建 xlsx 文件,使用以下 java 脚本代码
var ns = XLSX.utils.book_new();
ns.props = {
title: "new excell sheet",
subject: "test",
Ather: "Shan",
createdDate: Date.now(),
};
ns.SheetNames.push("Test");
var nb_data = [["hello", "shan"]];
var nb = XLSX.utils.aoa_to_sheet(nb_data);
ns.Sheets["Test"] = nb;
var nbOut = XLSX.write(ns, { bookType: "xlsx", type: "binary" });
保存你的文件使用下面的函数作为你需要传递nbOut变量的参数
function saveBook(s) {
var buf = new ArrayBuffer(s.length);
var view = new Uint8Array(buf);
for (var i = 0; i < s.length; i++) {
view[i] = s.charCodeAt(i) & 0xff;
}
return buf;
}
$("#create_sheet").click(function () {
saveAs(
new Blob([saveBook(nbOut)], { type: "application/octet-stream" }),
"test.xlsx"
);
});
您可以从 here!
中找到 sheet 库
您可以从 here 找到 FileSaver.js 库!
找到了两个有用的 JavaScript 库来使用 JavaScript
创建 xls 文件
简单轻便
https://github.com/egeriis/zipcelx
更有特色的图书馆
我想知道是否可以创建一个 Excel 文件并使用 javascript 从网页下载它?
目前,我成功创建了一个 .csv 文件并使用以下代码下载了它:
var blob = new Blob([csvText], { type: 'text/csv;charset=UFT-8;' });
var link = document.createElement("a");
if (link.download !== undefined) { // feature detection
// Browsers that support HTML5 download attribute
var url = URL.createObjectURL(blob);
link.setAttribute("href", url);
link.setAttribute("download", "file.csv");
link.style.visibility = 'hidden';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
我想知道 javascript 中是否有任何库允许将文件从 csv 格式转换为 xlsx 格式并使其以与 csv 相同的方式下载?
最终目的是在下载的xlsx中设置模板。
有几个选项 https://github.com/stephenliberty/excel-builder.js
另一个 github 项目 Excel 选项较少,但对 Excel 兼容性问题的担忧较少,可在此处找到:ExcellentExport.js https://github.com/jmaister/excellentexport
是的,您可以使用 sheetJS 创建 xlsx 文件,使用以下 java 脚本代码
var ns = XLSX.utils.book_new();
ns.props = {
title: "new excell sheet",
subject: "test",
Ather: "Shan",
createdDate: Date.now(),
};
ns.SheetNames.push("Test");
var nb_data = [["hello", "shan"]];
var nb = XLSX.utils.aoa_to_sheet(nb_data);
ns.Sheets["Test"] = nb;
var nbOut = XLSX.write(ns, { bookType: "xlsx", type: "binary" });
保存你的文件使用下面的函数作为你需要传递nbOut变量的参数
function saveBook(s) {
var buf = new ArrayBuffer(s.length);
var view = new Uint8Array(buf);
for (var i = 0; i < s.length; i++) {
view[i] = s.charCodeAt(i) & 0xff;
}
return buf;
}
$("#create_sheet").click(function () {
saveAs(
new Blob([saveBook(nbOut)], { type: "application/octet-stream" }),
"test.xlsx"
);
});
您可以从 here!
中找到 sheet 库您可以从 here 找到 FileSaver.js 库!
找到了两个有用的 JavaScript 库来使用 JavaScript
创建 xls 文件简单轻便
https://github.com/egeriis/zipcelx
更有特色的图书馆