Java从指定行开始读取文件内容
从指定行开始读取文件
/**
* 从指定行开始读文件
* @param txtPath 文件路径
* @param lineNum 行号
* @throws IOException
*/
public static void readLineByNum(String txtPath,int lineNum) throws IOException {
FileWriter writer;
//文件总行数
long count = Files.lines(Paths.get(txtPath)).count();
StringBuffer sb = new StringBuffer();
LineNumberReader lnr = new LineNumberReader(new FileReader(txtPath));
String line = lnr.readLine();
while (line!=null){
if (lnr.getLineNumber() >= lineNum && lnr.getLineNumber()<=count-2 ){
sb.append(line);
sb.append("\r\n");
}
line = lnr.readLine();
}
writer = new FileWriter(txtPath,false);
writer.write(sb.toString());
writer.close();
System.out.println(sb.toString());
}
lnr.getLineNumber() <= count - 2
上面这个代码判断我是去掉了最后两行,去掉此判断则读到文件最后一行