您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
要监控Java中File文件的修改时间,您可以使用java.nio.file
包中的WatchService
import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;
public class FileWatcher {
public static void main(String[] args) throws IOException, InterruptedException {
// 指定要监控的目录
Path path = Paths.get("path/to/your/directory");
// 创建一个WatchService实例
WatchService watchService = FileSystems.getDefault().newWatchService();
// 注册要监控的目录的事件类型,这里我们监控ENTRY_MODIFY事件
path.register(watchService, StandardWatchEventKinds.ENTRY_MODIFY);
System.out.println("开始监控目录: " + path);
while (true) {
// 获取并处理下一个事件
WatchKey watchKey = watchService.take();
for (WatchEvent<?> event : watchKey.pollEvents()) {
WatchEvent.Kind<?> kind = event.kind();
// 如果事件类型是ENTRY_MODIFY,则输出文件的修改时间
if (kind == StandardWatchEventKinds.ENTRY_MODIFY) {
@SuppressWarnings("unchecked")
WatchEvent<Path> pathEvent = (WatchEvent<Path>) event;
Path modifiedFile = path.resolve(pathEvent.context());
BasicFileAttributes attrs = Files.readAttributes(modifiedFile, BasicFileAttributes.class);
System.out.println("文件修改时间: " + attrs.lastModifiedTime());
}
}
// 重置WatchKey,以便继续接收事件
boolean valid = watchKey.reset();
if (!valid) {
break;
}
}
}
}
请将path/to/your/directory
替换为您要监控的目录路径。这个示例将监控指定目录中文件的修改时间,并在控制台输出修改时间。请注意,这个示例将一直运行,直到您停止程序。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。