以下均利用Gson來處理:
1.將bean轉換成Json字符串:
- public static String beanToJSONString(Object bean) {
- return new Gson().toJson(bean);
- }
- public static Object JSONToObject(String json,Class beanClass) {
- Gson gson = new Gson();
- Object res = gson.fromJson(json, beanClass);
- return res;
- }
注:轉換後的對象使用前進行強轉:例如bean bean1 = (bean)FormatUtil.JSONToObject(json, bean.class);
3.將Json字符串轉換成JsonObject對象:
- JsonObject returnData = new JsonParser().parse(jsonstr).getAsJsonObject();
4.將JsonArray類型的Json字符串解析成對象方法
- Gson gson = new Gson();
- JsonParser parser = new JsonParser();
- JsonArray Jarray = parser.parse(jstring).getAsJsonArray();
- ArrayList<channelSearchEnum> lcs = new ArrayList<channelSearchEnum>();
- for(JsonElement obj : Jarray ){
- channelSearchEnum cse = gson.fromJson( obj , channelSearchEnum.class);
- lcs.add(cse);
- }
或者
- String json = "[{\"username\":\"test\"},{\"username\":\"test2\"}]";
- System.out.println(new JsonParser().parse(json).getAsJsonArray().get(0).getAsJsonObject().get("username").getAsString());
5.獲取JsonObject中指定key值對應的JsonArray對象:
- String json= "{\"pids\":[\"1\",\"2\",\"3\"]}";
- System.out.println(new JsonParser().parse(json).getAsJsonObject().getAsJsonArray("pids").get(0).getAsString());