java - 无法在新 IDE 中读取 JSON 文件

标签 java json intellij-idea

我有一个包含以下代码的 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/

相关文章:

java - 密码编辑记录器

java - 避免在 java 中对 http 调用进行 URI 验证

java - 多个线程访问一个 ArrayList

javascript - 离线使用 i18next,无需网络服务器

android - XmlPullParser 从文件系统获取文件

java - TableViewer 和 TreeViewer 的混合版本

python - 你如何在 Python 中请求 IMDB API?

java - length开头的json是什么类型的

java - 如何通过代码调用 IntelliJ 内联方法操作?

java - IntelliJ 无法解析符号 "newFixedThreadPool"