【发布时间】:2015-01-24 18:19:59
【问题描述】:
我在读取流时出错。流还包含图像以及字符串数据。我的代码是,
static String convertStreamToString(java.io.InputStream is) {
Reader reader = new InputStreamReader(is);
BufferedReader r = new BufferedReader(reader);
StringBuilder total = new StringBuilder();
String line = null;
try {
while ((line = r.readLine()) != null) {
total.append(line);
}
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(total);
return line;
}
在while循环中,随着堆内存的增加,它会导致consol,最后给出错误“内存不足”
希望您的建议
【问题讨论】:
-
在返回String之前尝试关闭InputStream。
-
r.close()需要。total.append(line).append("\n");左右,因为行没有行尾。return total.toString();否则返回 ... null。 -
在while循环中仍然出现内存不足的错误
标签: java android eclipse inputstream bufferedreader