Java android中未获取Base64图像数据

Java android中未获取Base64图像数据,java,android,httpurlconnection,Java,Android,Httpurlconnection,我正在使用HTTPURLConnection连接到服务器,我的响应包含Base64图像数据。当尝试使用getInputStream读取响应时,它没有读取完整的响应,在这两者之间会中断。我的响应包含JSON格式的对象列表,每个对象都包含BASE64图像数据。尝试从第一个对象读取第一个图像数据时读取中断。虽然它没有显示任何错误,但它显示到一半的图像数据。我如何获得完整的响应??这是我的密码 InputStream is = httpURLConnection.getInputStream();

我正在使用
HTTPURLConnection
连接到服务器,我的响应包含
Base64
图像数据。当尝试使用
getInputStream
读取响应时,它没有读取完整的响应,在这两者之间会中断。我的响应包含JSON格式的对象列表,每个对象都包含BASE64图像数据。尝试从第一个对象读取第一个图像数据时读取中断。虽然它没有显示任何错误,但它显示到一半的图像数据。我如何获得完整的响应??这是我的密码

InputStream is = httpURLConnection.getInputStream();
            byte[] b = new byte[1024];
            StringBuffer buffer=new StringBuffer();
            while ( is.read(b) != -1){
                buffer.append(new String(b));
                System.out.println("Read= "+is.read());
            }
System.out.println(buffer);

您是否尝试过中的示例代码

其中,
readStream
是您自己的方法


BufferedInputStream中读取
更容易、更快。

您是否尝试过来自的示例代码

其中,
readStream
是您自己的方法


BufferedInputStream中读取
更容易、更快。

由于Base64字符串很长,所以在尝试记录它们时,它可能会被截断。尝试将其保存到文件中。您应该能够看到整个字符串。@EricB。我尝试过这个方法,但得到了相同的结果。现在我得到了更多的数据,但它仍然无法读取。有可能因为Base64字符串很长,所以当您尝试记录它们时,它会被截断。尝试将其保存到文件中。您应该能够看到整个字符串。@EricB。我尝试过这个方法,但得到了相同的结果。现在我得到了一些更多的数据,但它再次无法读取。
URL url = new URL("http://www.android.com/");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
try {
    InputStream in = new BufferedInputStream(urlConnection.getInputStream());
    readStream(in);
} finally {
    urlConnection.disconnect();
}