【问题标题】:org.json.JSONException: JSONObject["ListeCar"] not foundorg.json.JSONException: JSONObject ["ListeCar"] 未找到
【发布时间】:2016-04-21 10:33:06
【问题描述】:

我想用 json 库用 java 读取这个 JSON 文件

"ListeCar": [
    {
        "id": "R",
        "size": "2",
        "Orientation": "Horizontal",
        "Position": {
            "Row": "2",
            "Column": "0"
        }
    }

这是我的java代码:

package rushhour;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Iterator;
import org.json.*;


public class JsonClass {
public static void main(String[] args) throws IOException, JSONException {


    try{
        JSONObject obj = new JSONObject(new FileReader("C:\\Users\\Nuno\\Desktop\\School\\clg-g41326\\RushHourJson.json"));

        JSONObject jsonObject =  (JSONObject) obj;

        JSONArray Liste = obj.getJSONArray("ListeCar");
        String listeCar = Liste.getJSONObject(0).getString("id");
        for (int i = 0; i <Liste.length(); i++) {
        String id = Liste.getJSONObject(i).getString("id");
        System.out.println(id);
        String size = Liste.getJSONObject(i).getString("size");
        System.out.println(size);
        String Orientation = Liste.getJSONObject(i).getString("Orientation");
        System.out.println(Orientation);
        String Position = Liste.getJSONObject(i).getString("Position");
        System.out.println(Position);    
        }
    }catch(JSONException e){
                e.printStackTrace();
                }
}
}

我在 netbeans 中这样做,这是我第一次使用 Json ! 我只想从这个小 json 代码中做一个 system.out。我不知道为什么他没有找到我放入新 JSONObjet 的文件...

【问题讨论】:

  • 您没有使用有效的 json。请更正格式

标签: java json netbeans


【解决方案1】:
{
      "ListeCar":[
       {
           "id":"R",
           "size":"2",
           "Orientation":"Horizontal",
           "Position":{
                "Row":"2",
                "Column":"0"
            }
      }]
}

试着把它放在你的 .json 文件中 您的 json 无效...尝试将其放在此站点中以检查其有效性....http://json.parser.online.fr/

以及正确输出的代码......

public static void main(String[] args) throws IOException, JSONException, ParseException {
    try {
        JSONParser parser = new JSONParser();
        Object obj = parser.parse(new FileReader("/home/Desktop/temp.json"));
        JSONObject objJsonObject = new JSONObject(obj.toString());
        System.out.println(objJsonObject);
        JSONArray Liste = objJsonObject.getJSONArray("ListeCar");
        String listeCar = Liste.getJSONObject(0).getString("id");
        for (int i = 0; i < Liste.length(); i++) {
            String id = Liste.getJSONObject(i).getString("id");
            System.out.println(id);
            String size = Liste.getJSONObject(i).getString("size");
            System.out.println(size);
            String Orientation = Liste.getJSONObject(i).getString("Orientation");
            System.out.println(Orientation);
            String Position = Liste.getJSONObject(i).getJSONObject("Position").toString();
            System.out.println(Position);
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
}

你忘了解析 json... 在上面的代码中完成了....有关如何执行此操作的教程的链接如下::http://crunchify.com/how-to-read-json-object-from-file-in-java/

【讨论】:

  • 不幸的是它给了我同样的问题:/
  • 您是否使用上面的链接检查过您的 json 文件的有效性?
  • 没错,我的 json 无效.. 我认为我的 listCar
  • @NunoDores - 希望以上是您想要的......如果是,请不要忘记将此答案标记为正确的答案......它可能会在未来帮助其他人......
  • 很高兴解决您的问题...不要忘记投票并将其标记为正确答案:)
猜你喜欢
  • 2016-04-21
  • 2021-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-14
  • 2018-06-05
  • 2019-01-31
  • 1970-01-01
相关资源
最近更新 更多