json字符串转换为JSONObject和JSONArray

Posted Fight With Me!!!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了json字符串转换为JSONObject和JSONArray相关的知识,希望对你有一定的参考价值。

一.下载json 具体到http://www.json.org/上找java-json下载,并把其放到项目源代码中,这样就可以引用其类对象了

二.具体转化过程

//JSONObject

 String jsonMessage = "{\"语文\":\"88\",\"数学\":\"78\",\"计算机\":\"99\"}";
  String value1 = null;
  try
  {
   //将字符串转换成jsonObject对象
   JSONObject myJsonObject = new JSONObject(jsonMessage);
   //获取对应的值
   value1 = myJsonObject.getString("数学");
  }
  catch (JSONException e)
  {
  }
  
  System.out.println("value1="+value1);

//JSONArray

jsonMessage = "[{‘num‘:‘成绩‘, ‘外语‘:88, ‘历史‘:65, ‘地理‘:99, ‘object‘:{‘aaa‘:‘1111‘,‘bbb‘:‘2222‘,‘cccc‘:‘3333‘}}," +
           "{‘num‘:‘兴趣‘, ‘外语‘:28, ‘历史‘:45, ‘地理‘:19, ‘object‘:{‘aaa‘:‘11a11‘,‘bbb‘:‘2222‘,‘cccc‘:‘3333‘}}," +
           "{‘num‘:‘爱好‘, ‘外语‘:48, ‘历史‘:62, ‘地理‘:39, ‘object‘:{‘aaa‘:‘11c11‘,‘bbb‘:‘2222‘,‘cccc‘:‘3333‘}}]";
  JSONArray myJsonArray;
  try
  {
   myJsonArray = new JSONArray(jsonMessage);
   
   for(int i=0 ; i < myJsonArray.length() ;i++)
   {
    //获取每一个JsonObject对象
    JSONObject myjObject = myJsonArray.getJSONObject(i);
    
    //获取每一个对象中的值
    String numString = myjObject.getString("num");
    int englishScore = myjObject.getInt("外语");
    int historyScore = myjObject.getInt("历史");
    int geographyScore = myjObject.getInt("地理");
    //获取数组中对象的对象
    JSONObject myjObject2 = myjObject.getJSONObject("object");
    String aaaString = myjObject2.getString("aaa");
    System.out.println("aaaString="+aaaString);
    
    System.out.println("numString="+numString);
    System.out.println("englishScore="+englishScore);
    System.out.println("historyScore="+historyScore);
    System.out.println("geographyScore="+geographyScore);
   }
  }
  catch (JSONException e)
  {
  }

以上是关于json字符串转换为JSONObject和JSONArray的主要内容,如果未能解决你的问题,请参考以下文章

JSON与对象的转换-JSONObject.fromObject

JSONObject.toBean怎么转化带有Timestamp类型的对象

Java自定义方法转换前端提交的json字符串为JsonObject对象

org.json.JSONObject 类型的值无法转换为 JSONArray

使用 json.simple 将字符串转换为 json 对象

Android JSON解析字符串无法转换为jsonobject