使用org.json.simple
将 key 转换为jsonobject
。我尝试了很多方法,但都失败了
第一种方法
JSONObject name1 = (JSONObject) jsonObject.get(key);
error : cannot convert java.lang.string to org.json.simple.json.object
第二种方式
JSONParser parser = new JSONParser();
JSONObject name1 = (JSONObject) parser.parse(key);
error : Unexpected character (N) at position 0. at org.json.simple.parser.Yylex.yylex(Unknown Source) at org.json.simple.parser.JSONParser.nextToken(Unknown Source) at org.json.simple.parser.JSONParser.parse(Unknown Source) at org.json.simple.parser.JSONParser.parse(Unknown Source) at org.json.simple.parser.JSONParser.parse(Unknown Source)
第三种方式
Long name1 = Long.valueOf(jsonObject.get(key));
error: The method valueOf(String) in the type Long is not applicable for the arguments (Object)
第四种方式
我使用了这个功能:
optJSONObject(key)
error: optJSONObject is undefined for JSONObject
我怎样才能让它发挥作用?
最佳答案
因此 JSONObject.get(key) 函数通常不会返回 json 对象本身。但 org.json 数据包已经解释了这一点。 从这一点开始仔细阅读,因为 org.json 包含 2 个 JSONObject 包,即 org.json.simple 和普通的 org.json.JSONObject,因此我不知道这是否在 org.json.simple 中显式工作,但这就是我在使用 org.json 包处理 JSONObject 时所做的事情。
JSONObject name1 = jsonObject.getJSONObject(key);
这一行做你想做的事情。尝试一下。
JSON 包提供了 getInt、getString、getJSONObject 等函数,供您准确指定要获取的数据类型。
关于java - JAVA 中关键检查 JSONObject org.json.simple,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58899329/