2014-05-05 5 views
-2

Je suis en train de convertir le fichier JSON en fichier CSV. Mais je suis confronté au problème dans le
JSONArray docs = output.getJSONArray ("Le texte variera à chaque exécution."); Comment prendre la valeur du getJSONArray ("xxx") ???Convertir le JSON en CSV en utilisant java

JSONObject output = new JSONObject(jsonString); 
JSONArray docs = output.getJSONArray("elements"); 
File file=new File(csvFilepath); 
String csv = CDL.toString(docs); 
FileUtils.writeStringToFile(file, csv); 

Merci à l'avance

+0

J'ai du mal à comprendre votre question. – Brian

+0

ce que vous ne comprenez pas dans ma question – Thyagu

+0

Non, je ne comprends pas votre question. – Brian

Répondre

-1

quelque chose comme ça?

public static void main(String[] args) throws JSONException { 
     String numbers = "{\"test\":[{\"elements\" : \"1\"},{\"elements\":\"2\"},{\"elements\":\"3\"}]}"; 
     JSONObject output = new JSONObject(numbers); 
     JSONArray docs = output.getJSONArray("test"); 

     for (int i = 0; i < docs.length(); i++) { 
      System.out.println(docs.get(i)); 
     } 

    } 
0

Cela dépend de la structure de votre JSON et de la disposition attendue du fichier CSV.

Il n'y a pas de réponse «couper et coller» à cela, vous allez devoir vous efforcer de cartographier les choses comme vous le souhaitez.

Sélectionnez les objets dont vous avez besoin dans le JSON, puis parcourez le tableau résultant et mappez chacun d'entre eux sur une ligne de votre fichier CSV.

Rien de trop fatigant, juste l'itération de la boucle et la manipulation des fichiers.

0

j'ai eu la sortie avec le code ci-dessous

String[] Names=output.getNames(output); 
JSONArray docs =output.getJSONArray(Names[0]); 
0

Si vous essayez de convertir le document JSON au format CSV, vous pouvez essayer la bibliothèque json2flat.

Il prend tout document JSON dynamique et essaie de le convertir dans un format approprié.

Pour l'utilisation de code et exemple conversion JSON s'il vous plaît click on this link.