hutool实现监听文件变化

简介: hutool实现监听文件变化

在一些自己写的PC端小工具中,经常会读取文件内容到内存中,但是只是再工具启动首次读取,如果启动之后修改了文件内容,则无法同步更新到工具,Hutool库提供了一个工具可以让我们实时“监控”文件的变化,比如有新内容写出到文件时,我们可以及时打印出来。可以使用 Tailer 类来实现。


importcn.hutool.core.io.FileUtil;
importcn.hutool.core.io.file.Tailer;
publicclassTest {
publicstaticvoidmain(String[] args) {
Tailertailer=newTailer(FileUtil.file("H:\\project\\hutool-study\\src\\main\\resources\\file1.txt"), Tailer.CONSOLE_HANDLER);
tailer.start();
    }
}

其中Tailer.CONSOLE_HANDLER表示文件新增内容默认输出到控制台。

从源码来看,我们也可以实现工具提供的接口方法来处理变更内容

packagecn.hutool.core.io;
/*** 行处理器* @author Looly**/@FunctionalInterfacepublicinterfaceLineHandler {
/*** 处理一行数据,可以编辑后存入指定地方* @param line 行*/voidhandle(Stringline);
}


相关文章
|
6月前
|
Java Spring
Springboot+jpa如何设置启动项目表不存在就主动创建,字段没有就新增
Springboot+jpa如何设置启动项目表不存在就主动创建,字段没有就新增
490 0
|
监控 Java Linux
Hutool操作和监听文件
Hutool操作和监听文件
185 0
|
6月前
|
API
使用commons-io-2.0 API来实现监听文件变化
使用commons-io-2.0 API来实现监听文件变化
288 0
|
6月前
|
JavaScript
如何使用`watch`选项来监听特定属性的变化?
如何使用`watch`选项来监听特定属性的变化?
44 0
.NET Core - 配置变更监听:配置热更新能力的核心
.NET Core - 配置变更监听:配置热更新能力的核心
|
前端开发
WebSocket实时改变任务的计算状态【Java+Vue实现】
WebSocket实时改变任务的计算状态【Java+Vue实现】
137 0
|
Java Nacos
Java:nacos客户端ClientWorker无限输出更新日志
Java:nacos客户端ClientWorker无限输出更新日志
360 0
activiti 全局流程监听ActivitiEventListener,实现监听不同类型事件,不需要在acitivit中配置任务监听,非常方便
activiti 全局流程监听ActivitiEventListener,实现监听不同类型事件,不需要在acitivit中配置任务监听,非常方便
1162 0
activiti 全局流程监听ActivitiEventListener,实现监听不同类型事件,不需要在acitivit中配置任务监听,非常方便
|
XML 安全 测试技术
TestNG学习-监听方法的使用
TestNG学习-监听方法的使用
|
Java API
hutool文件监听
java工具学习