2011-07-11 3 views
0

Je veux créer JSON, formate est commeComment créer JSON structuré complexe

"header": 
      { 
       "b":"aaaa", 
       "c":"00", 
       "d":"zzzzz", 
       "e": "0" 
      }, 
"Body": 
      { 
       "g": 
       [ 
        { 
         "h": "sss", 
         "i": "vvvv", 
         "j": "11111" 
        }, 
        { 
         "h": "wwww", 
         "i": "ddddd", 
         "j": "0000" 
        }, 
        { 
         "h": "eeeee", 
         "i": "asdf" 
        } 
       ] 
      } 

Je veux créer cette JSON avec l'aide de GSON, Merci à l'avance.

+0

Qu'est-ce qui vous dérange? Voyons voir du code Java. –

+0

L'avez vous essayé? Quel est votre problème? S'il vous plaît poster l'exemple de code complet. – Vinnyq12

+0

Je peux créer un simple JSON, qui a {"KEY": "Value"}, mais je ne sais vraiment pas, comment créer ce type de complexe JSON. corps ayant une clé que la clé contient également tableau ... s'il vous plaît aidez-moi – Nimit

Répondre

1

L'exemple JSON cible de la question d'origine n'est pas valide. JSON doit commencer par '[' ou '{'. Si le JSON non valide de la question d'origine est entouré de '{' et '}', il s'agit d'un objet JSON valide. (Il est facile d'utiliser http://jsonlint.com pour valider JSON.) En supposant qu'un tel objet JSON soit la structure de données cible, voici un exemple d'utilisation d'une structure de données Java correspondante avec Gson pour générer le JSON.

import java.util.ArrayList; 
import java.util.List; 

import com.google.gson.Gson; 

public class Foo 
{ 
    public static void main(String[] args) throws Exception 
    { 
    Header header = new Header("aaaa", "00", "zzzzz", "0"); 
    List<Gs> g = new ArrayList<Gs>(); 
    g.add(new Gs("sss", "vvvv", "11111")); 
    g.add(new Gs("wwww", "ddddd", "0000")); 
    g.add(new Gs("eeeee", "asdf", null)); 
    Body body = new Body(g); 
    Message message = new Message(header, body); 

    System.out.println(new Gson().toJson(message)); 
    } 
} 

class Message 
{ 
    Header header; 
    Body Body; 

    Message(Header header, Body body) 
    { this.header = header; this.Body = body; } 
} 

class Header 
{ 
    String b; 
    String c; 
    String d; 
    String e; 

    Header(String b, String c, String d, String e) 
    { this.b = b; this.c = c; this.d = d; this.e = e; } 
} 

class Body 
{ 
    List<Gs> g; 

    Body(List<Gs> g) 
    { this.g = g; } 
} 

class Gs 
{ 
    String h; 
    String i; 
    String j; 

    Gs(String h, String i, String j) 
    { this.h = h; this.i = i; this.j = j; } 
} 
0

Si vous souhaitez créer un fichier JSON, veuillez cliquer sur le lien suivant. Cette section explique comment coder les données au format JSON:

+0

Merci, mais ce n'est pas similaire à la structure ci-dessus. – Nimit