Gson将字符串转换成JsonObject和JsonArray
http://www.cnblogs.com/nihaorz/p/5885307.html
以下均利用Gson来处理:
1.将bean转换成Json字符串:
|
1
2
3
|
public static String beanToJSONString(Object bean) { return new Gson().toJson(bean);} |
2.将Json字符串转换成对象:
|
1
2
3
4
5
|
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对象:
|
1
|
JsonObject returnData = new JsonParser().parse(jsonstr).getAsJsonObject(); |
4.将JsonArray类型的Json字符串解析成对象方法:
|
1
2
3
4
5
6
7
8
9
10
|
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); } |
或者
|
1
2
|
String json = "[{\"username\":\"test\"},{\"username\":\"test2\"}]";System.out.println(new JsonParser().parse(json).getAsJsonArray().get(0).getAsJsonObject().get("username").getAsString()); |
5.获取JsonObject中指定key值对应的JsonArray对象:
|
1
2
|
String json= "{\"pids\":[\"1\",\"2\",\"3\"]}";System.out.println(new JsonParser().parse(json).getAsJsonObject().getAsJsonArray("pids").get(0).getAsString()); |
via:http://blog.csdn.net/ling125521/article/details/37773501

浙公网安备 33010602011771号