2017-08-21 3 views
2

Ich möchte einen JSON-String wie folgt erstellen:Wie erstelle ich JSON in Android?

[{"addon_id":2,"addon_rate":1550},{"addon_id":3, "addon_rate":300}] 

Ist das möglich? Wie?

Mein Code, wie es steht:

String formattedString = BookingDetailsCartAdapter.addones_id.toString().replace("[", "").replace("]", "").trim(); 
String formattedString1 = BookingDetailsCartAdapter.addones_rate.toString().replace("[", "").replace("]", "").trim(); 

myjson="[{\"addon_id\":\""+formattedString+"\",\"addon_rate\":\""+formattedString1+"\"}]"; 
+0

Bitte bearbeiten Sie Ihren Code ordnungsgemäß, so dass es verstanden werden kann. Geben Sie klar an, was Sie fragen. –

+0

Sehen Sie sich https://developer.android.com/reference/org/json/package-summary.html an. – jerry

Antwort

2

können Sie verwenden Gson

in Gradle

compile 'com.google.code.gson:gson:2.8.1' 


public class Addon{ 
    public int addon_id; 
    public int addon_rate; 
} 

Addon addon = new Addon(); 
addon.addon_id=2; 
addon.addon_id=1550; 
Gson gson = new Gson(); 
String json = gson.toJson(addon); // 

// --- Bei Array-Datei hinzufügen

List<Addon > objList = new ArrayList<Addon >(); 
objList.add(new Addon (0, 1550)); 
objList.add(new Addon (1, 1552)); 
objList.add(new Addon (2, 1553)); 


String json = new Gson().toJson(objList); 
System.out.println(json); 

http://www.javacreed.com/simple-gson-example/

+0

schlechte Lösung. Er fragte nicht, ob er json ein Modell zuordnen könne, er fragte, wie man einen solchen JSON erstellt. Verwenden von Third-Party-Bibliotheken, Erstellen von Modellen, ... zum Generieren von JSON ist nicht das, wonach er gefragt hat –

+1

@EmanuelSeibold Ich stimme nicht zu. Diese Lösung ist in Ordnung. Es bringt ans Licht, eine sehr freundliche Art, Json zu erzeugen, die dem OP nicht bekannt ist. – Doomsknight

+1

und führt zu mehr Fragen für einen Anfänger. "Was ist Gson?" "Wie kann ich GSON installieren neben der Tatsache, dass die Gradel Importlinie ist mit einer festen Version", "..". Die Tatsache, dass es ohne Drittanbieter-Libs möglich ist, führt einen Anfänger irre, auch wenn ich für diesen Fall gson mag. –

2

Ihr JSON bedeutet, dass es ein Array ist, das zwei Objekte mit den Schlüsseln addon_id und addon_rate enthält. Beide akzeptieren eine Zahl/Integer als Wert. Zuerst müssen Sie ein JSONArray erstellen, das mehrere JSONObjects enthält. Dann müssen Sie die JSONObjects erstellen, die Ihre Schlüssel und Werte festlegen. Danach müssen Sie diese Objekte zu Ihrem Array hinzufügen. Ihr jsonArray enthält die Zeichenfolge oben, sobald Sie drucken/toString() es

JSONArray jsonArray = new JSONArray(); 

JSONObject jsonObjOne = new JSONObject(); 
jsonObjOne.put("addon_id", 2); 
jsonObjOne.put("addon_rate", 1550); 

JSONObject jsonObjTwo = new JSONObject(); 
jsonObjTwo.put("addon_id", 3); 
jsonObjTwo.put("addon_rate", 300); 

jsonArray.put(jsonObjOne); 
jsonArray.put(jsonObjTwo); 
Verwandte Themen