我有以下JS代码,可以令人满意地生成.csv
文件并将其保存在用户指定的位置:
JS
function generateCSV() {
var csvContent = "data:text/csv;charset=utf-8,"
//Generates Valid CSV
return csvContent
}
function download(filename, text) {
var pom = document.createElement('a');
pom.setAttribute('href', text);
pom.setAttribute('download', filename);
pom.click();
}
$('#downloadCSV').click(function () {
var csvContent = generateCSV();
download("foobar.csv", encodeURI(csvContent));
});
我的问题是,当我在MS Excel中打开它时,某些文本是左对齐的,而有些是正确对齐的。如何以编程方式统一居中对齐所有文本?
答案 0 :(得分:2)
在Excel中打开的CSV文档中的列对齐方式受数据类型的影响。文本的对齐方式与数字和日期不同。如果要强制某些对齐,可以更改列中的数据类型(即,您可以在数字的开头添加制表以使其像文本一样对齐)或生成Excel文件(xls或xlsx)
这与右边对齐:
1;2;3
但这与左边对齐:
1; 2; 3
修改强> 回到原来的问题:无法在Excel中打开的CSV文档中居中数据。