答案 0 :(得分:1)
尝试这样的事情:
//get the file location
String filePath = "somefilepath.txt";
//catch file IO errors
try {
//return the contents of the file
String[] lines = Files.readAllLines(Paths.get(filePath))
}
它将为变量行分配文件中所有字符串行的数组。然后你可以索引到那个数组,以获得你需要的东西或循环它。
编辑:没有数组就可以看到这个链接:
http://www.programcreek.com/2011/03/java-read-a-file-line-by-line-code-example/
答案 1 :(得分:1)
如果..else语句错误,你正在做 要么在第一次执行后要终止循环的情况下返回函数或打破循环,这就是发生这种情况的原因。
答案 2 :(得分:1)
你的while循环读取(大约):
while ( more lines ) {
if ( match ) {
return;
} else {
break;
}
}
你的循环永远不会执行多次。
删除else
子句,并在循环结束后放置println("Not found");
。
答案 3 :(得分:0)
您的代码只会读取第一行,因为您在if块中放置并在其他块中断。在这两种情况下,它都将失控。
从if块中删除return语句。
答案 4 :(得分:0)
你的else子句是错误的,如果第一个循环不匹配,它会立即退出,而不会做任何其他事情。 你应该打印声明" Not found ...."在while循环结束之后。