我使用
JsonObject和
Gson格式化我需要以String形式发送的数据,然后在其他地方检索和解析.
这是我的简单代码,它不工作:
这是我的简单代码,它不工作:
public static void main(String[] args) { Gson g = new Gson(); Gson listG = new Gson(); ArrayList<String> l= new ArrayList<String>(); l.add("abcd"); l.add("efgh"); l.add("ijkl"); String list = listG.toJson(l); JsonObject jObject = new JsonObject(); jObject.addProperty("command",1); jObject.addProperty("message","this is a test message"); jObject.addProperty("list",list); String toSend = g.toJson(jObject); System.out.println(toSend); Gson rec = new Gson(); JsonObject newObj = rec.fromJson(toSend,JsonObject.class); System.out.println(newObj); // getting nothing in newObj }
我在这里做错了什么?
你应该使用:
JsonObject newObj = new JsonParser().parse(toSend).getAsJsonObject();
那里有很多电话,但要点是要使用JsonParser课.