Hoe jsonString naar JSONObject converteren in Java

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...

Oplossing

Met behulp van org.json bibliotheek:

try {
     JSONObject jsonObject = new JSONObject("{\"phonetype\":\"N95\",\"cat\":\"WP\"}");
}catch (JSONException err){
     Log.d("Error", err.toString());
}
Commentaren (21)

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:

Google Gson Project Home Page

Gson Gebruikershandleiding

Voorbeeld

Commentaren (4)

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.

Commentaren (0)