4

ユーザーが選択したフィールドに基づいて、json 値をフラットな csv に変換しようとしています。私のjsonは次のようになります

var data = {
"_index": "test",
"_type": "news",
"_source": {
    "partnerName": "propertyFile 9",
    "relatedSources": "null",
    "entityCount": "50",
    "Categories": {
        "Types": {
            "Events": [{
                "count": 1,
                "term": "Time",
                "Time": [{
                    "term": "Dec 9",
                    "Dec_9": [{
                        "count": 1,
                        "term": "2012"
                    }]
                    }]
                }, {
                "count": 4,
                "term": "News",
                "News": [{
                    "term": "Germany",
                    "Germany": [{
                        "count": 1,
                        "term": "Election"
                    }],
                    "currency": "Euro (EUR)"
                }, {
                    "term": "Egypt",
                    "Egypt": [{
                        "count": 1,
                        "term": "Revolution"
                    }]
                    }]
                }]
            }
    }
}};

すべてのオカレンスの値を収集してcsvとして保存できましたが、ルート自体から詳細を保存したい..

Time を選択すると、csv 出力は次のようになります。

"test", "news", "propertyFile 9","null", "50", "Events": "Time", "Dec 9", "2012"

jsonを平坦化することは可能ですか..jsonフィドルリンクを追加して、このことでどこに到達したかを示します.. http://jsfiddle.net/JHCwM/

4

6 に答える 6

2

あなたのdata値は JSON (文字列) ではありません - それはオブジェクトです。このオブジェクトを「平坦化」する方法はたくさんありますが、この小さな関数が役立つかもしれません:

var recMap = function(obj) {
  return $.map(obj, function(val) { 
    return typeof val !== 'object' ? val : recMap(val); 
  });
}

そして、これがどのように使用できるかです。)

于 2012-07-04T16:20:57.210 に答える
0

以下を試してください:

http://codebeautify.org/view/jsonviewer

[CSV にエクスポート] ボタンを使用する

于 2014-05-22T12:45:09.700 に答える
0

ここを見てみてください:

http://www.zachhunter.com/2011/06/json-to-csv/

そしてここ:

JSONをCSV形式に変換して変数に格納する方法

于 2012-07-04T16:17:54.597 に答える