Gson将字符串转换成JsonObject和JsonArray


以下均利用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

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM