【发布时间】:2022-01-24 08:51:41
【问题描述】:
我有一个数组,看起来像这样:
rows = [
[Name, Description, Number ...],
["A thing", "Description, but it has commas in it", 6, ...],
...
]
我正在尝试将其下载为 csv 文件。这是我到目前为止的代码:
// Make a csv from rows
let csv = rows.map(row => row.join(",")).join("\n");
document.getElementById("csv_download").setAttribute("download", "file_name.csv");
document.getElementById("csv_download").href = "data:text/csv;charset=utf-8," + encodeURIComponent(csv);
当数组中没有逗号时,这可以正常工作,但现在它会在“描述”之后看到逗号并将其拆分。我也不能用 " 来分割它,因为有些项目是数字。
我该如何解决这个问题?
【问题讨论】:
-
向我们展示一个生成的 CSV 示例 - 在 CSV 中的 quoted 文本中包含逗号(甚至换行符)是完全可以接受的。也许您的解析器不明白这一点?虽然看起来您生成 CSV 的尝试有点天真
标签: javascript csv