2013-11-18 2 views
1

Мне нужно опубликовать приведенные ниже данные JSON от Android до Webservice. Это данные JSONКак опубликовать вложенные данные JSON в Android?

{ "AutoMobileName": "Мерседес", "Двигатель": "В4", "BrandInfo": { "Модель": "C500", "ColorType" : "Черный",» DatePurchased ":" 1990 "}}

Использование Android Java Я делаю вот так.

JSONObject holder = new JSONObject(); 
holder.put("AutoMobileName", "Mercedes"); 
holder.put("Engine", "V4"); 
StringEntity se = new StringEntity(holder.toString()); 
httpost.setEntity(se); 

Используя приведенный выше код, два параметра будет размещен, но как я могу отправить данные BrandInfo как он вложен.

Как разместить его внутри объекта holder и разместить его?

+0

@ Nambi .. вы можете попробовать List & HashMap для этого. Это может быть довольно легко – nitesh

ответ

7

Делают это так:

 JSONObject holder = new JSONObject(); 

    //BrandInfo 
    JSONObject brandInfo = new JSONObject(); 
    brandInfo.put("Model", "C500"); 
    brandInfo.put("ColorType", "Black"); 
    brandInfo.put("DatePurchased", "1990"); 


    holder.put("AutoMobileName", "Mercedes"); 
    holder.put("Engine", "V4"); 
    holder.put("BrandInfo", brandInfo); 
    System.out.println(holder); 
1

Создайте другой объект JSON для бренда информации

JSONObject brandInfo = new JSONObject(); 
brandInfo.put("Model","C500"); 
brandInfo.put("ColorType","Black"); 
brandInfo.put("DatePurchased","1990"); 

и присвоить его переменной держатель следующим образом:

JSONObject holder = new JSONObject(); 
holder.put("AutoMobileName", "Mercedes"); 
holder.put("Engine", "V4"); 
holder.put("BrandInfo", brandInfo); 
StringEntity se = new StringEntity(holder.toString()); 
httpost.setEntity(se); 
1
JSONObject holder = new JSONObject(); 
    JSONObject innerholder = new JSONObject(); 
    innerholder .put("Model", "C500"); 
    innerholder .put("ColorType", "Black"); 
    innerholder .put("DatePurchased", "1990"); 

    holder.put("BrandInfo", innerholder); 
    holder.put("AutoMobileName", "Mercedes"); 
    holder.put("Engine", "V4"); 


StringEntity se = new StringEntity(holder.toString()); 
httpost.setEntity(se); 
Смежные вопросы