【问题标题】:How to export JavaScript Json info to csv (on client side)?如何将 JavaScript Json 信息导出到 csv(在客户端)?
【发布时间】:2015-10-27 17:19:50
【问题描述】:

从数组信息到 csv:

<script>

    function downloadCsv() {
        var data = arrCsvData;
        var csvContent = "data:text/csv;charset=utf-8,";
        data.forEach(function(infoArray, index) {

            dataString = infoArray.join(",");
            csvContent += index < data.length ? dataString + "\n" : dataString;

        });

        var encodedUri = encodeURI(csvContent);
        var link = document.createElement("a");
        link.setAttribute("href", encodedUri);
        link.setAttribute("download", "my_data.csv");

        link.click();
    }

</script>

同样,我如何将 javascript json 信息导出到 csv(在客户端)??

【问题讨论】:

  • 这里的 'arrCsvData' 是一个数据数组..
  • 这似乎包含在这个stackoverflow问题here

标签: javascript json csv


【解决方案1】:

以下是我们如何将数组的 json 数组下载为 cdv 数据格式:

function downloadCsv() {
            var data = arrCsvData;
            var csvContent = "data:text/csv;charset=utf-8,";

                for (var key in data) {
                  if (data.hasOwnProperty(key)) {
                    data[key].unshift([key,""]);
                    for(var index=0;index<data[key].length;index++){
                        var elementArray = data[key][index];
                        data[key][index] = elementArray.join(",");
                    }
                    csvContent += data[key].join("\n");
                  }
                  csvContent += "\n";
                }
            var encodedUri = encodeURI(csvContent);
            var link = document.createElement("a");
            link.setAttribute("href", encodedUri);
            link.setAttribute("download", "graphData.csv");

            link.click();
        }

它对我有用:)

【讨论】:

    【解决方案2】:

    我自己实现了这个确切的问题。

    它将 JSON 对象的 JSON 数组转换为在 Office 365 Excel 中可读的 CSV 文件。

    我用它把工作表转换成excel表格。

        var jsonData = [
            {
                "Object": "Object",
                "AnotherObject": "AnotherValue"
            },
            {
                "Object": "SecondObject",
                "AnotherObject": "SecondValue"
            }
        ];
        WriteCSV(jsonData);
    

    会在 Excel 中给出这个:

    Screenshot Excel

    Github page

    【讨论】:

      猜你喜欢
      • 2022-07-12
      • 1970-01-01
      • 2016-02-11
      • 2019-11-11
      • 2018-06-14
      • 2013-03-19
      • 2019-12-18
      • 2011-01-28
      • 1970-01-01
      相关资源
      最近更新 更多