当文件中有更多字符串时,BufferedReader()返回空字符串?

时间:2013-03-20 03:08:29

标签: java file-io bufferedreader

我的txt文件如下所示:

data;data2;data3;data4..........up till data3146

当我在记事本中打开txt文件时,我会以上面给出的形式看到它。 但是当我将前几行复制粘贴到另一个地方时,有一行间隙b / w data1和其他所有内容。因此,我在使用Java访问文件并在循环中使用带缓冲重新读取器的数据时遇到问题。我怎么能纠正这个?我无法删除空行,因为它在原始文件中甚至不可见。

3 个答案:

答案 0 :(得分:1)

您可以忽略空白行。像这样的东西 -

    while ((line = reader.readLine()) != null) {
        if(line.trim().isEmpty()) {
            continue;
        }
        ...   

答案 1 :(得分:1)

你可以这样试试:

BufferedReader reader = new BufferedReader(new FileReader(new File("your file path")));
    String str = null;
    while((str = reader.readLine())!=null) {
        if (str.matches("[' ']+")) {
            continue;
        } else {
            // to do 
        }
    }

答案 2 :(得分:0)

我认为这个问题存在于行尾。基本上你可以跳过空行:

String line;
while ((line = reader.readLine()) != null) {
  if ("".equals(line.trim()) {
    continue;
  }
  // do your stuff here
}