【问题标题】:extracting of string parameter value from java output [duplicate]从java输出中提取字符串参数值[重复]
【发布时间】:2015-01-30 08:11:58
【问题描述】:

您好,我从 java 代码中得到以下输出:

access_token=CAAW2msiMWaQBAJSLGF1YFU3rJzIzZCFKB3ZAi9UaZCTwOU52s9EEuXXnyV0NBdZApNphWWHGCDP9iCVeI7qliXRCc43IERm5oqBeDplk3fZCLpZBEAwRY2NjKm4o3e4LlCiiUjPLdDNophNOxczJ9fMb2cZCAqILbh2cDnID1i4QZBkKGwGTLuikcz6ptt8ZCl4WifaGtFl5O6fgnbIbgM89f&expires=5181699

如何仅检索 access_token 的值?我的代码如下:

 String line;
        StringBuffer buffer = new StringBuffer();
        BufferedReader reader = new BufferedReader(new InputStreamReader(
                conn.getInputStream()));

        while ((line = reader.readLine()) != null) 
        {
            buffer.append(line);
        }

        reader.close();
        conn.disconnect();
       String response1= buffer.toString();

谢谢你。

【问题讨论】:

  • 嗯,我敢肯定还有很多更复杂的方法,但不耐烦的方法就是做buffer.toString().substring(13, 13 + length-of-token);
  • 用番石榴:Splitter.on("&").withKeyValueSeparator("=").split(yourString); 给你一个Map 然后get("access_token") 给你想要的价值。

标签: java string jsp http servlets


【解决方案1】:

首先,在 & 符号 & 上分割线。然后将每个键和值拆分为等于=。搜索"access_token" 并显示(或使用)它。喜欢,

String[] tokens = line.split("&");
for (String token : tokens) {
    String[] kv = token.split("=");
    String key = kv[0];
    String value = kv[1];
    if (key.equalsIgnoreCase("access_token")) {
        System.out.println(value);
        break; // <-- stop because we found it.
    }
}

【讨论】:

    【解决方案2】:

    你可以通过使用字符串的 split() 方法来做到这一点

    试试这个。

    String [] response = response1.split("&");
    
    System.out.println("My Token : " + response[0]);
    

    输出将是

    access_token=CAAW2msiMWaQBAJSLGF1YFU3rJzIzZCFKB3ZAi9UaZCTwOU52s9EEuXXnyV0NBdZApNphWWHGCDP9iCVeI7qliXRCc43IERm5oqBeDplk3fZCLpZBEAwRY2NjKm4o3e4LlCiiUjPLdDNophNOxczJ9fMb2cZCAqILbh2cDnID1i4QZBkKGwGTLuikcz6ptt8ZCl4WifaGtFl5O6fgnbIbgM89f
    

    那么要获取access_token的值试试这个,

      String [] tokenValue = response[0].split("=");
    
      System.out.println("My Token Value : " + tokenValue[1]);
    

    【讨论】:

      猜你喜欢
      • 2020-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-14
      • 2020-11-26
      • 2018-11-28
      • 1970-01-01
      相关资源
      最近更新 更多