Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
位置0处的意外字符(i)。-用Java解析JSON_Java_Json - Fatal编程技术网

位置0处的意外字符(i)。-用Java解析JSON

位置0处的意外字符(i)。-用Java解析JSON,java,json,Java,Json,这是我试图解析的JSON的一个片段。以下是我正在使用的代码: { "0" : { "upc" : "00000000005", "name" : "Weighable Soup Cups", "location" : "5310ed21d5dc7aaa0343a932" }, "1" : { "upc" : "00000000011", "name" : "OF Reuseable Bags"

这是我试图解析的JSON的一个片段。以下是我正在使用的代码:

{
    "0" : {
        "upc" : "00000000005",
        "name" : "Weighable Soup Cups",
        "location" : "5310ed21d5dc7aaa0343a932"
    },
    "1" : {
        "upc" : "00000000011",
        "name" : "OF Reuseable Bags",
        "location" : "5310ed21d5dc7aaa0343a932"
    }
}
由于某些原因,在位置0处抛出意外字符(i)。据我所知,JSON文件的格式正确,可以进行解析,而且代码是可靠的,所以我不明白为什么这样做行不通。谢谢。

JSONParser#parse(String)
需要的是JSON字符串,而不是文件名

您可以使用重载方法,该方法需要一个
读取器
,并提供一个
InputStreamReader
,该读取器包装一个
FileInputStream

public class Main {

    public static void main(String[] args) {

        JSONParser parser = new JSONParser();


        JSONObject jsonObject = null;
        try {
            jsonObject = (JSONObject) parser.parse("items.json");
        } catch (ParseException e) {
            e.printStackTrace();
        }

        JSONObject structure = (JSONObject) jsonObject.get("0");
        System.out.println(structure.get("upc"));



    }

}
JSONParser#parse(String)
需要JSON字符串,而不是文件名

您可以使用重载方法,该方法需要一个
读取器
,并提供一个
InputStreamReader
,该读取器包装一个
FileInputStream

public class Main {

    public static void main(String[] args) {

        JSONParser parser = new JSONParser();


        JSONObject jsonObject = null;
        try {
            jsonObject = (JSONObject) parser.parse("items.json");
        } catch (ParseException e) {
            e.printStackTrace();
        }

        JSONObject structure = (JSONObject) jsonObject.get("0");
        System.out.println(structure.get("upc"));



    }

}

或者只需一个
文件阅读器
就可以了。或者只需一个
文件阅读器
就可以了。