Java 从字符串创建JSONObject
我知道这个问题已经被问到了,我尝试了所有的解决方案,但都不适合我。 我有一个json语法字符串:Java 从字符串创建JSONObject,java,arrays,json,Java,Arrays,Json,我知道这个问题已经被问到了,我尝试了所有的解决方案,但都不适合我。 我有一个json语法字符串: { tasks: [ { blockId: "startpoint1", properties: [ "aaaa" ] }, { blockId: "endpoint2", properties: [ "tttttt" ] } ] } 我试图通过以下方式从该字符串
{
tasks: [
{
blockId: "startpoint1",
properties: [ "aaaa" ]
},
{
blockId: "endpoint2",
properties: [ "tttttt" ]
}
]
}
我试图通过以下方式从该字符串创建一个JSONObject
:
JSONParser parser=new JSONParser();
try {
JSONObject json=(JSONObject) parser.parse(req.getParameter(WORKFLOW_DEFINITION_PROPERTIES));
} catch (ParseException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
现在我想在tasks
数组上循环,以获取每个元素blockId
。我试图通过如下方式将JSONObject
转换为JSONArray
来实现这一点:
JSONArray tasks=(JSONArray) json.get("tasks");
但我仍然能够循环执行任务
,以获得块ID的
。
你能告诉我我做错了什么,或者如何解决这个问题吗 您必须使用
getJsonArray
方法而不是get
方法来检索任务数组:
JSONArray tasks= json.getJsonArray("tasks");
您必须使用
getJsonArray
方法而不是get
方法来检索任务数组:
JSONArray tasks= json.getJsonArray("tasks");
只需更改创建JSONObject的方式
JSONObject jObject = new JSONObject(jsonStr);
//later you can access to your array
JSONArray tasks=(JSONArray) jObject.get("tasks");
只需更改创建JSONObject的方式
JSONObject jObject = new JSONObject(jsonStr);
//later you can access to your array
JSONArray tasks=(JSONArray) jObject.get("tasks");
你需要这个吗
var arrayVariable=[
{
blockId: "startpoint1",
properties: [ "aaaa" ]
},
{
blockId: "endpoint2",
properties: [ "tttttt" ]
}
]
arrayVariable.map(function(d){
return d.blockId
});
出去,你会得到你所有的blockId
["startpoint1", "endpoint2"]
你需要这个吗
var arrayVariable=[
{
blockId: "startpoint1",
properties: [ "aaaa" ]
},
{
blockId: "endpoint2",
properties: [ "tttttt" ]
}
]
arrayVariable.map(function(d){
return d.blockId
});
出去,你会得到你所有的blockId
["startpoint1", "endpoint2"]
var obj=JSON.parse(字符串)代码>我在Java中没有javaScriptvar obj=JSON.parse(字符串)代码>我在Java中没有Javascript此方法不包括在org.json.simple.JSONArray
class I使用此方法不包括在org.json.simple.JSONArray
class I使用JSONObject
的构造函数是JSONObject(map)
,因此,我不能用字符串直接创建JSONObject
,这不是真的,在org.json json 20160810版本中,您可以从字符串创建对象。JSONObject
的构造函数是JSONObject(map)
,所以我不能用字符串直接创建JSONObject
,这不是真的,在org.json json 20160810版本中,你可以从字符串创建对象。不,我的json字符串是从UI图动态创建的,所以我不能像你那样静态创建它,使用JSON.parse(JSONstring)将JSON字符串转换为JSON对象,然后使用我上面的方法它会工作不,我的JSON字符串是从UI图动态创建的,所以我不能像您那样静态创建它。使用JSON.parse(JSONstring)将JSON字符串转换为JSON对象,然后使用我上面的方法它会工作