【问题标题】:Convert JSON Parse Array to CSV将 JSON 解析数组转换为 CSV
【发布时间】:2012-11-27 18:20:31
【问题描述】:

首先我看到了 The Other Threads,我认为它们都没有使用 PHP 或 javascript。

在我编码并添加斜杠以转义 JSON 非法字符后,我有这个数组:

"#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12" "#Tahrir","2012-Oct-12"  "#Tahrir","2012-Oct-19" "#Tahrir","2012-Oct-19" "#Tahrir","2012-Oct-19"

想要将其更改为 CSV 或找到一种方法将其与此示例中的图表一起使用:http://bl.ocks.org/3883245#data.tsv

多谢提前。

【问题讨论】:

  • 哦,顺便说一句,我从 FireBug 获得了阵列视图
  • 你想用 PHP 还是 JavaScript 来做这个?请相应地修复您的标签。
  • 好吧,我不知道可能是 JS,因为我要在 D3 上使用?
  • 在 JSON 编码数组以将其发送到 JavaScript 之前,我执行了某种函数并返回了这样的数组:"\"Word\",\"Date\"\n\"#Tahrir\",\"2012-Oct-12\"\n\"#Tahrir\",\"2012-Oct-12\"\n\

标签: php javascript json csv d3.js


【解决方案1】:

要将 json 数据转换为 CSV,请尝试使用此 http://jsfiddle.net/sturtevant/vUnF9/(不是我的代码)

function JSON2CSV(objArray) {
var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;

var str = '';
var line = '';

if ($("#labels").is(':checked')) {
    var head = array[0];
    if ($("#quote").is(':checked')) {
        for (var index in array[0]) {
            var value = index + "";
            line += '"' + value.replace(/"/g, '""') + '",';
        }
    } else {
        for (var index in array[0]) {
            line += index + ',';
        }
    }

    line = line.slice(0, -1);
    str += line + '\r\n';
}

for (var i = 0; i < array.length; i++) {
    var line = '';

    if ($("#quote").is(':checked')) {
        for (var index in array[i]) {
            var value = array[i][index] + "";
            line += '"' + value.replace(/"/g, '""') + '",';
        }
    } else {
        for (var index in array[i]) {
            line += array[i][index] + ',';
        }
    }

    line = line.slice(0, -1);
    str += line + '\r\n';
}
return str;
}

【讨论】:

  • 能否请您重新上传您的头像,使其在用户卡中看起来更好?
  • 干杯,现在好多了!
猜你喜欢
  • 1970-01-01
  • 2022-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-05
  • 2019-10-11
  • 2017-09-07
相关资源
最近更新 更多