当在使用BufferedReader读取数据时,出现“Android错误:在读取BufferedReader后连接被重置。”的问题通常是由于服务器端在读取请求后关闭了连接,而客户端仍然在尝试读取数据造成的。为了解决这个问题,你可以使用以下代码示例中的一种方法:
方法一:使用try-with-resources语句
try (BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream))) {
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
// 处理响应数据
} catch (IOException e) {
e.printStackTrace();
}
方法二:手动关闭连接
BufferedReader reader = null;
try {
reader = new BufferedReader(new InputStreamReader(inputStream));
String line;
StringBuilder response = new StringBuilder();
while ((line = reader.readLine()) != null) {
response.append(line);
}
// 处理响应数据
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
以上两种方法都使用了try-catch语句来捕获可能发生的IOException,并对其进行处理。在处理完响应数据后,记得关闭BufferedReader以释放资源。
希望以上解决方法能够帮助到你解决“Android错误:在读取BufferedReader后连接被重置。”的问题。