在Java中从JSONPATH获取字符串字段
我目前拥有以下JSON:在Java中从JSONPATH获取字符串字段,java,jsonpath,Java,Jsonpath,我目前拥有以下JSON: {"content": [{"uuid":"123132", "firstname" : "Jon", "lastname" : "Deer" ... } ] } 我正在尝试使用Java获取uuid的字符串值。以下是我的代码: JSONPATH jsonPath = new JSONPATH(json); String myString = jsonPath.getString("content.uuid"); Sy
{"content":
[{"uuid":"123132",
"firstname" : "Jon",
"lastname" : "Deer"
...
}
]
}
我正在尝试使用Java获取uuid的字符串值。以下是我的代码:
JSONPATH jsonPath = new JSONPATH(json);
String myString = jsonPath.getString("content.uuid");
System.out.println(myString);
结果字符串:[123132]
所需字符串:123132
有没有其他方法可以使用JSONPATH获得预期的结果,而不使用子字符串删除字符串的第一个和最后一个字符,因为查看代码会有点混乱?JSONPATH的返回值是一个数组,也是一个有效的JSON结构。如果您需要将数据作为其他类型,例如本例中的字符串,则必须自己进行转换以获取值
检查此示例以及它返回数组的原因。jsonPath的返回值是一个数组,也是一个有效的JSON结构。如果您需要将数据作为其他类型,例如本例中的字符串,则必须自己进行转换以获取值 检查此示例及其返回数组的原因。由于内容是数组,content.uuid返回字符串列表。然而,当我们调用getString方法时,该列表使用toString转换为字符串,因此,我们得到了[123132] 获取第一个值的正确方法是jsonPath.getStringcontent[0].uuid 由于内容是数组,content.uuid返回字符串列表。然而,当我们调用getString方法时,该列表使用toString转换为字符串,因此,我们得到了[123132] 获取第一个值的正确方法是jsonPath.getStringcontent[0].uuid 你试过google.simple.Json Jar吗?这个Jar可以让您轻松地读取这个JSONObject
{
"content":
[{"uuid":"123132",
obj_ComplexJson ==> "firstname" : "Jon",
"lastname" : "Deer"
...
}],[],[],[]
}
JSONObject obj_ComplexJson = "{"content":[{}]}""; //this json object contains your Actual Object.
JSONParser parser = new Parser();
JSONArray obj_arr = (JSONArray)parser.parse(obj_ComplexJson.get("content"));
for(JSONObject eachObj : obj_arr){
System.out.println(eachObj.get("uuid"));
..........
..........
}
得到Maven或
你试过google.simple.Json Jar吗?这个Jar可以让您轻松地读取这个JSONObject
{
"content":
[{"uuid":"123132",
obj_ComplexJson ==> "firstname" : "Jon",
"lastname" : "Deer"
...
}],[],[],[]
}
JSONObject obj_ComplexJson = "{"content":[{}]}""; //this json object contains your Actual Object.
JSONParser parser = new Parser();
JSONArray obj_arr = (JSONArray)parser.parse(obj_ComplexJson.get("content"));
for(JSONObject eachObj : obj_arr){
System.out.println(eachObj.get("uuid"));
..........
..........
}
得到Maven或
如果我们想从jsonPath获取整个字符串,我们应该怎么做?当我们使用jsonPath.getString$时,我们得到的是根对象中的所有对象。但我们需要整个根对象。如果我们想从jsonPath获得整个字符串,我们应该怎么做?当我们使用jsonPath.getString$时,我们得到的是根对象中的所有对象。但我们需要整个根对象。