1

我正在开发一个发布到网站的应用程序,并且我正在尝试将实体响应存储为字符串。但是,该字符串似乎只包含一小部分响应,大约 35 行左右。我想知道它是否与缓冲区溢出有关,但我真的不确定。我的代码如下:

static String getResponseBody(HttpResponse response) throws IllegalStateException, IOException{

    String content = null;
    HttpEntity entity = response.getEntity();

    if (entity != null) 
    {
        InputStream is = entity.getContent();
        BufferedReader br = new BufferedReader(new InputStreamReader(is));
        StringBuilder sb = new StringBuilder();
        String line = null;

        while ((line = br.readLine()) != null) 
        {
            if(isBlankString(line) == false)
            {
            sb.append(line + "\n");
            }
        }
        br.close();
        content = sb.toString();
    }
    return content; 

isBlankString 只记录一行是否不包含任何字符,因为响应中有很多空白行让我感到困扰。无论有没有这个,我都没有得到整个回应的问题。任何机构都知道发生了什么或如何解决这个问题?

谢谢

4

1 回答 1

8

在我的应用程序中,我只使用单行从实体获取响应字符串:

final String responseText =  EntityUtils.toString(response.getEntity());
于 2011-03-10T20:02:02.447 回答