Gson将字符串转换成JsonObject和JsonArray

来源:互联网 发布:和玛丽苏开玩笑 知乎 编辑:程序博客网 时间:2024/05/30 04:04

以下均利用Gson来处理:

1.将bean转换成Json字符串:

public static String beanToJSONString(Object bean) {return new Gson().toJson(bean);}


2.将Json字符串转换成对象:

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());


0 0
原创粉丝点击