如何从java中的响应中获取一部分?

如何从java中的响应中获取一部分?,java,json,string,Java,Json,String,我的回答如下: {"result":1,"redirect":"","user_login":"Woldo","user_id":"4358970","session_id": "ab89JBFLrYJ,6-lXKnv-T9wC481"} 我只想要我使用的session\u id部分ab89JBFLrYJ,6-lXKnv-T9wC481 ReadSession.substring(86, 113); 但每当用户名较长的人登录时,我就会遇到麻烦,因为它超出了113的范围 谢谢 数据采用JSO

我的回答如下:

{"result":1,"redirect":"","user_login":"Woldo","user_id":"4358970","session_id":
"ab89JBFLrYJ,6-lXKnv-T9wC481"}
我只想要我使用的
session\u id
部分
ab89JBFLrYJ,6-lXKnv-T9wC481

ReadSession.substring(86, 113); 
但每当用户名较长的人登录时,我就会遇到麻烦,因为它超出了113的范围


谢谢

数据采用JSON格式。使用该类对其进行解析,然后提取会话id值

对于一般用途,您可以执行类似的愚蠢操作

String string = "{\"result\":1,\"redirect\":\"\",\"user_login\":\"Woldo\",\"user_id\":\"4358970\",\"session_id\":\n" +
"\"ab89JBFLrYJ,6-lXKnv-T9wC481\"}";
       int index = string.indexOf("session_id");
       String id = string.substring(index+14, string.length()-2);
        System.out.println(id);

最好将此输入字符串转换为JsonObject,然后从该对象中提取
session\u id
键。如果您使用的是
org.json.JSONObject
类,那么您可以尝试以下代码

String input = //your input
  try {
      JSONObject jsonObject = new JSONObject(input);
      String sessionID = jsonObject.getString("session_id");
    }catch (JSONException e){

    }

使用JSON解析器:谢谢你,这对我来说非常好,我以后可能会检查JSON解析,但现在它与你的解决方案一起工作,谢谢!