📅  最后修改于: 2023-12-03 15:16:01.886000             🧑  作者: Mango
在Java中,有多种方法可以读取文件的最后一行。下面将介绍两种常见的方法。
使用RandomAccessFile
类可以实现对文件的随机访问,可以方便地定位到文件的末尾,并读取最后一行。
import java.io.*;
public class FileUtility {
public static String getLastLineOfTextFile(String filePath) {
String lastLine = "";
try {
RandomAccessFile file = new RandomAccessFile(filePath, "r");
long fileLength = file.length();
// 从文件末尾逐行读取内容
for (long i = fileLength - 1; i >= 0; i--) {
file.seek(i);
char c = (char) file.read();
if (c == '\n') {
lastLine = file.readLine();
break;
}
}
file.close();
} catch (IOException e) {
e.printStackTrace();
}
return lastLine;
}
}
使用示例:
String filePath = "path/to/file.txt";
String lastLine = FileUtility.getLastLineOfTextFile(filePath);
System.out.println("最后一行内容:" + lastLine);
在这种方法中,我们使用BufferedReader
类逐行读取文件并记录最后一行。
import java.io.*;
public class FileUtility {
public static String getLastLineOfTextFile(String filePath) {
String lastLine = "";
try {
BufferedReader reader = new BufferedReader(new FileReader(filePath));
String line;
// 逐行读取文件,记录最后一行
while ((line = reader.readLine()) != null) {
lastLine = line;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
return lastLine;
}
}
使用示例:
String filePath = "path/to/file.txt";
String lastLine = FileUtility.getLastLineOfTextFile(filePath);
System.out.println("最后一行内容:" + lastLine);
以上两种方法均可用来读取文本文件的最后一行。根据实际情况选择适合的方法即可。