我有一个包含以下代码的 Eclipse 项目:
import org.json.*;
import org.json.simple.JSONObject;
import java.io.*;
import java.util.Iterator;
(...)
public static void main( String[] args )
{
String resourceName = "C:\\Users\\Snail_Sniffer\\Desktop\\books.json";
String jsonData = readFile(resourceName);
JSONObject jobj = new JSONObject(jsonData);
(...)
它不会产生错误并且按预期工作,但是当我在 IntelliJ 中重用相同的代码时,它会产生以下错误:
Error:java: constructor JSONObject in class org.json.simple.JSONObject cannot be applied to given types; required: no arguments found: java.lang.String reason: actual and formal argument lists differ in length
Error:java: cannot find symbol symbol: method getString(java.lang.String) location: variable jobj of type org.json.simple.JSONObject
导致该问题的原因以及如何解决该问题?
最佳答案
我不确定您在 eclipse 中使用哪个库,但是 org.json.simple.JSONObject没有带有 String
参数的构造函数。它只有无参构造函数
public JSONObject()
如果你想使用org.json.simple
库解析json字符串,你需要JSONParser
JSONParser parser = new JSONParser();
JSONObject jsonObject = (JSONObject) parser.parse(jsonData);
关于java - 无法在新 IDE 中读取 JSON 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58103978/