2012-04-18 88 views
3

目前我正在试图从BufferedReader读取String,但无法找到一个方法来做到这一点...从BufferedReader读取(readLine)返回null?

当然我试图

BufferedReader inStream = null; 
inStream = new BufferedReader(new InputStreamReader(client.getInputStream())); 
String test = inStream.readLine(); 

但是尝试打印时出现的结果不为空即使BufferedReader inStream等于某种类型的消息也可以显示在屏幕上。

+3

您确定输入流中有实际内容吗? – Attila 2012-04-18 03:52:30

+0

第一行可能为空... – joshuahealy 2012-04-18 03:53:37

+0

Attila的注释非常重要 - 当达到流结束时,'BufferedReader.readLine()'将返回null。 – 2012-04-18 03:55:18

回答

10

根据the documentationBufferedReader.readLine()仅在到达流的末尾时才返回null。这意味着如果对readLine()的第一次调用返回null,则输入流中没有任何内容开始。

+0

但是肯定有当我打印出缓冲读取器时,它显示了我从我的另一台计算机上传递给我的信息...... – Charlie 2012-04-18 04:24:21

+0

'readLine'返回'null'还是一个空字符串?也就是说,当你打印出来的时候,你看到“空白字符串”或“null”字样吗? – Attila 2012-04-18 04:27:04

+0

如何打印出BufferedReader?显示一些代码。 – 2012-04-18 04:27:10