Json到excel文件的转换使用javascript
Json to excel file convert using javascript
有关详细信息,请查找以下代码。
function dataToCSVTry(arr) {
var fileName = "CSVFile";
var data = "";
for (var i = 0; i < arr.length; i++) {
data += (arr[i].id + " , " + arr[i].time + "'r'n");
}
var url = 'data:text/csv;charset=utf8,' + encodeURI(data);
window.open(url, '_blank');
window.download = (url + ".txt");
var encodedUri = encodeURI(url);
var link = document.createElement("a");
link.setAttribute("href", encodedUri);
link.setAttribute("download", "my_data.csv");
link.click();
};
`
这是一个函数,我将向其提供JSON数据作为输入,然后尝试使用for循环将其转换为CSV(逗号分隔值)。之后,我尝试将其保存为.txt和.csv格式。由于.txt很容易保存,问题出现在excel文件中,其中的数据如下:
"1%20%2C%20161.963%0A%0D%0A2%20%2C%20473.222%0A%0D%0A3%20%2C%20error%0A%0D%0A"
其中一些代码(根据我的想法)用于空格("%20%2C%20"
),而另一些代码("%0A%0D%0A"
)用于换行符。要创建相同CSV格式的Excel文件,需要做些什么?我正在使用的encodeURI
部件有问题吗?
数据url内容不是URI编码的,而是base-64编码的。您应该使用btoa或类似的解决方案从您构建的CSV字符串创建数据。
相关文章:
- 将这些正则表达式从javascript转换为Java
- 使用JAVASCRIPT转换货币.可以't通过我的函数设置转换后的输入文本字段的值
- 使用ScriptObjectMirror将数组结果从JavaScript转换为有用的东西
- 如何在javascript转换编码中将一个动态值从一个表单添加到另一个页面
- 使用document.cookie将客户端javascript转换为节点模块
- 将纯javascript转换为jquery
- 按钮标签,javascript 转换为链接标签
- Javascript转换数组
- 如何将此JavaScript转换为插件
- 将可迭代的 Javascript 转换为数组
- DOM元素上的Javascript转换
- 用javascript转换日期
- 将代码从JavaScript转换为PHP
- 将var javascript转换为java变量
- 如何使用javascript转换特殊字符及其实体名称(如&with&)
- 如何将这个javascript转换为jquery
- Clojure到JavaScript转换器(Leiningen)
- .Net Ticks 使用 JavaScript 转换为 ISO 8601 日期格式
- JavaScript 转换用户输入
- 将 Javascript 转换为 coffeescript