gpt4 book ai didi

java - 未为 JSONObject 类型定义方法 getJSONObject(String)

转载 作者:行者123 更新时间:2023-11-30 07:02:02 26 4
gpt4 key购买 nike

我正在从我的类(class)返回一个 json:

@POST("/test")
@PermitAll
public JSONObject test(Map form) {

JSONObject json=new JSONObject();
json.put("key1",1);
json.put("key2",2);
return json;
}

现在我想从“getInputStream”获取这个 json 并解析它以查看 key1 是否存在:

String output = "";

BufferedReader reader = new BufferedReader(new InputStreamReader(con.getInputStream()));
StringBuilder output = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
output.append(line + "\n");
}

output=output.toString();
JSONObject jsonObj = new JSONObject();
jsonObj.put("output", output);

if (jsonObj.get("output") != null){
**//search for key1 in output**
System.out.println("key1 exists");
}else{
System.out.println("key1 doesnt exist");
}
reader.close();

如何将 output 转换为 JSONObject 并搜索“key1”?

我尝试了以下操作,但在箭头后出现错误:

JSONObject jObject  = new JSONObject(output);  ---> The constructor JSONObject(String) is undefined
JSONObject data = jObject.getJSONObject("data"); ---> The method getJSONObject(String) is undefined for the type JSONObject
String projectname = data.getString("name"); ----> The method getString(String) is undefined for the type JSONObject

最佳答案

JSONObject jsonObject = (JSONObject) JSONValue.parse(output);

试试这个。

然后您可以使用以下方法验证该字段是否存在:

jsonObject.has("key1");

关于java - 未为 JSONObject 类型定义方法 getJSONObject(String),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29355038/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com