Convertir imbriquée arbitraire, JSON, CSV en Java

Cette question a été posée plusieurs fois mais je n'arrivais pas à trouver la réponse qui résout mon problème.

Je suis en train de convertir imbriquée format JSON au format CSV comme ceci :

La structure JSON est arbitraire et pourrait être n'importe quoi, imbriqués ou non.

Je ne suis pas censée le savoir, c'est une base de données de réponse et j'ai besoin d'exporter cette réponse JSON dans le fichier CSV.

Voici un exemple

D'entrée :

   {
    "_id": 1,
    "name": "Aurelia Menendez",
    "scores": [
              {
                 "type": "exam",
                 "score": 60.06045071030959
               },
               {
                 "type": "quiz",
                 "score": 52.79790691903873
               },
               {
                "type": "homework",
                "score": 71.76133439165544
               }
             ]
          }

La sortie, je suis à la recherche de :

_id,name,scores.type,scores.score,scores.type,scores.score,scores.type,scores.score  
 1,Aurelia Menendez,exam,60.06...,quiz,52.79...,homework,71.76..

Ceci est un exemple, il pourrait être tout autre document JSON.

L'idée ici est d'utiliser la notation point dans la colonne CSV nom.

Je l'ai déjà utilisé CDL mais la sortie n'est pas ce que je veux :

_id scores  name
 1  "[{score:60.06045071030959,type:exam},{score:52.79790691903873,type:quiz},{score:71.76133439165544,type:homework}]" Aurelia Menendez

Alors, comment puis-je convertir des imbriquée JSON, CSV avec la notation point et de manière générique ?

Modifications

Deserialisation du JSON avec Jackson :

   ObjectMapper mapper=new ObjectMapper();

    JsonNode jsonNode=mapper.readValue(new File("C:\\...\\...\...\\test.json"), JsonNode.class);

Ismail

Est-ce que vous avez essayé?
CDL mais je ne suis pas libre de définir les paramètres afin que je puisse avoir la sortie que je veux.
Avez-vous jamais été confronté à mon problème ?
Avez-vous envisagé d'écrire un peu de code? (Oui, je sais que c'est une éruption chose à proposer.)
Je pense que les formes de cette JSON sont limitées. Analyser les formes de structure JSON, vous pouvez obtenir à partir de la base de données, et de déclarer la java de la classe ou des classes java qui peut refléter cette structure. Et après que l'utilisation GSON ou d'une autre deserializer pour traiter cette structure json.

OriginalL'auteur Ismail Sen | 2014-07-16