Ik heb String variabele genaamd jsonString
:
{"phonetype":"N95","cat":"WP"}
Nu wil ik het omzetten in JSON Object. Ik heb meer gezocht op Google maar kreeg geen verwachte antwoorden...
Met behulp van org.json bibliotheek:
try {
JSONObject jsonObject = new JSONObject("{\"phonetype\":\"N95\",\"cat\":\"WP\"}");
}catch (JSONException err){
Log.d("Error", err.toString());
}
U kunt google-gson
gebruiken. Details:
Object voorbeelden
class BagOfPrimitives {
private int value1 = 1;
private String value2 = "abc";
private transient int value3 = 3;
BagOfPrimitives() {
// no-args constructor
}
}
(Serialisatie)
BagOfPrimitives obj = new BagOfPrimitives();
Gson gson = new Gson();
String json = gson.toJson(obj);
==> json is {"value1":1,"value2":"abc"}
Merk op dat je geen objecten kunt serialiseren met circulaire referenties, omdat dat zal resulteren in oneindige recursie.
(Deserialisatie)
BagOfPrimitives obj2 = gson.fromJson(json, BagOfPrimitives.class);
==> obj2 is just like obj
Een ander voorbeeld voor Gson:
Gson is eenvoudig te leren en te implementeren, je moet alleen de volgende twee methodes kennen:
-> toJson() - zet java object om naar JSON formaat
-> fromJson() - JSON converteren naar java object
import com.google.gson.Gson;
public class TestObjectToJson {
private int data1 = 100;
private String data2 = "hello";
public static void main(String[] args) {
TestObjectToJson obj = new TestObjectToJson();
Gson gson = new Gson();
//convert java object to JSON format
String json = gson.toJson(obj);
System.out.println(json);
}
}
Uitvoer
{"data1":100,"data2":"hello"}
Bronnen:
Er zijn verschillende Java JSON serializers en deserializers gelinkt aan de JSON home page.
Op het moment van dit schrijven, zijn er deze 22:
...maar de lijst kan natuurlijk veranderen.