我遇到这个问题,当我在命令行运行这个简单的程序时,我不断收到这个错误的错误
这是Json文件
{"count":"21740"}
这是代码
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Iterator;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
public class EarthQuake {
private static final String filePath = "data.json";
public static void main(String[] args) {
try {
// read the json file
FileReader reader = new FileReader(filePath);
JSONParser jsonParser = new JSONParser();
JSONObject jsonObject = (JSONObject) jsonParser.parse(reader);
// get a String from the JSON object
String count = (String) jsonObject.get("count");
System.out.println("The count is: " + count);
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
} catch (ParseException ex) {
ex.printStackTrace();
} catch (NullPointerException ex) {
ex.printStackTrace();
}
}
}
但我总是得到这个错误
"C:\>java -classpath .;json-simple-1.1.1.jar test
Unexpected character ( ) at position 1.
at org.json.simple.parser.Yylex.yylex(Yylex.java:610)
at org.json.simple.parser.JSONParser.nextToken(JSONParser.java:269)
at org.json.simple.parser.JSONParser.parse(JSONParser.java:118)
at org.json.simple.parser.JSONParser.parse(JSONParser.java:92)
at test.main(test.java:22)"
验证了json文件
我不知道我在这里做错了什么,请帮忙!
答案 0 :(得分:1)
我创建了一个文件,并将{"count":"21740"}
粘贴到该文件中,并将其命名为test.json。我能够运行代码没有错误。
但是为了调试你的问题,你可以使用直接传递给解析器的json字符串运行你的代码,如下所示;
JSONObject jsonObject = (JSONObject) jsonParser.parse("{\"count\":\"21740\"}");