java中的nextLine问题。

时间:2015-10-09 18:04:59

标签: java string

我对nextLine()方法有疑问。我知道它有时不会读取一行而是读取行分隔符,例如<enter>.因此你需要两次调用.nextLine()来&#34;吃&#34;行分隔符然后获取下一行。但是这会如何在循环中起作用?如何使用此方法获取文件的最后一行?我应该使用next()吗?

while ( fileStream1.hasNextLine() ){
        counterString = fileStream1.nextLine();
        ++lines;            
    }           

2 个答案:

答案 0 :(得分:0)

试试这个:

while ( fileStream1.hasNextLine() ){
    counterString = fileStream1.nextLine();

    if (counterString.Equals("\n") ||
        counterString.Equals("\r\n") ||
        counterString.Equals("\r")) {
        continue;
    }

    ++lines;            
}

要跳过仅\n\r\n\r

的所有行

答案 1 :(得分:0)

只需你可以这样写:

while ( fileStream1.hasNextLine() ){
    counterString = fileStream1.nextLine();
    if(!counterString.toString().equal("\n"))
       ++lines;            
}