文本文件,作为测试运行,我正在使用12行。我希望输出为12。我的输出始终为0。怎么了?我已经为学校编写了数千种这样的方法,但实际上无法弄清为什么这种方法不起作用。请帮助,我正在失去一种简单的方法。
public static int countLines(String inFileName) {
int numLines = 0;
try {
Scanner scFile = new Scanner(inFileName);
String line = scFile.nextLine();
while (!(line.equalsIgnoreCase("")) && scFile.hasNext()) {
numLines++;
line = scFile.nextLine();
scFile.next();
}
scFile.close();
} catch (Exception e) {
System.out.println("Error: " + e);
}
return numLines;
}
尝试一下:-
Stream<String> stream = Files.lines(Paths.get("file path"));
stream.forEach(System.out::println);
如何使用IO包
int noOfLines = 0;
BufferedReader reader;
try {
reader = new BufferedReader(new FileReader("myfile.txt"));
String line = reader.readLine();
while (line != null) {
//System.out.println(line);
// read next line
line = reader.readLine();
noOfLines++; }
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(noOfLines);