在Java中从JSONPATH获取字符串字段

在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

我目前拥有以下JSON:

{"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$时,我们得到的是根对象中的所有对象。但我们需要整个根对象。