【发布时间】:2011-04-26 15:12:29
【问题描述】:
我有一个可以从文本文件中读取的 InputStream。我注意到输入流没有从下一行的空白中读取。
示例文本文件:
[This is
A test file
Here.]
代码:
while ((str = br.readLine())!= null) {
System.out.println(str);
}
一些文本文件之间会有多个换行符。如何让输入流接受断线?
从示例文本文件中可以看出,“[This is”后面是一个空行,然后是“A test file”。如何读取两组字符串之间的空行? (这就是我对换行/断线的定义)
【问题讨论】:
-
“断线”是什么意思?你的意思是一行只包含 \r\n 或 \n (取决于操作系统)?
-
BufferedReader 不会跳过空白行——我想知道您所看到的两个空白行是否真的是 CR LF?
-
是的,我也建议使用 BufferedReader,我从来没有遇到过跳过空白行的问题。
-
InputStream 没有 readLine() 方法。你能发布你所有的代码吗?您希望在空行上阅读什么内容?
-
同意@Ishtar:InputStream 处理的是字节而不是字符——因此没有“行”的概念,因为没有字符的概念,也没有“\r”的概念跨度>