java按时间读取最新的txt文件
时间: 2024-09-19 15:12:55 浏览: 43
java读取txt文件并输出结果
5星 · 资源好评率100%
在Java中,如果你想要按时间顺序获取最新的.txt文件,你可以使用`FileInputStream`, `BufferedReader`以及一些文件和日期相关的API。下面是一个简单的示例:
```java
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.Comparator;
public class LatestTXTFile {
public static void main(String[] args) {
File folder = new File("path/to/your/folder"); // 替换为你的文件夹路径
if (!folder.exists() || !folder.isDirectory()) {
System.out.println("指定的文件夹不存在或不是一个目录");
return;
}
String[] files = folder.list((dir, name) -> name.endsWith(".txt")); // 获取文件夹下所有.txt文件名
File latestFile = null;
long maxTimestamp = Long.MIN_VALUE;
for (String fileName : files) {
File file = new File(folder, fileName);
try {
long timestamp = Files.getLastModifiedTime(file.toPath()).toMillis(); // 获取文件修改时间
if (timestamp > maxTimestamp && file.isFile()) { // 如果新文件时间戳大于当前最大值
maxTimestamp = timestamp;
latestFile = file;
}
} catch (IOException e) {
e.printStackTrace();
}
}
if (latestFile != null) {
try (BufferedReader reader = new BufferedReader(new FileReader(latestFile))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line); // 读取最新文件的内容
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} else {
System.out.println("没有找到任何.txt文件或文件夹为空");
}
}
}
```
这个程序会查找指定文件夹下的所有`.txt`文件,并返回最近修改过的那个文件。然后它打开并读取文件内容。
阅读全文