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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM