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月前
|
小程序
在uniapp中监听globalData中的值变化
在uniapp中监听globalData中的值变化
278 0
|
6月前
|
移动开发 前端开发 JavaScript
ruoyi-nbcio-plus基于vue3的flowable定时边界事件代码升级修改(一)
ruoyi-nbcio-plus基于vue3的flowable定时边界事件代码升级修改(一)
46 0
|
6月前
|
移动开发 前端开发
ruoyi-nbcio-plus基于vue3的flowable定时边界事件代码升级修改(三)
ruoyi-nbcio-plus基于vue3的flowable定时边界事件代码升级修改(三)
57 0
|
6月前
|
移动开发 JavaScript 前端开发
ruoyi-nbcio-plus基于vue3的flowable定时边界事件代码升级修改(二)
ruoyi-nbcio-plus基于vue3的flowable定时边界事件代码升级修改(二)
66 0
|
监控 Java Linux
Hutool操作和监听文件
Hutool操作和监听文件
183 0
|
6月前
|
API
使用commons-io-2.0 API来实现监听文件变化
使用commons-io-2.0 API来实现监听文件变化
270 0
|
6月前
|
JavaScript
如何使用`watch`选项来监听特定属性的变化?
如何使用`watch`选项来监听特定属性的变化?
44 0
|
前端开发
WebSocket实时改变任务的计算状态【Java+Vue实现】
WebSocket实时改变任务的计算状态【Java+Vue实现】
136 0
|
Java Nacos
Java:nacos客户端ClientWorker无限输出更新日志
Java:nacos客户端ClientWorker无限输出更新日志
360 0
activiti 全局流程监听ActivitiEventListener,实现监听不同类型事件,不需要在acitivit中配置任务监听,非常方便
activiti 全局流程监听ActivitiEventListener,实现监听不同类型事件,不需要在acitivit中配置任务监听,非常方便
1154 0
activiti 全局流程监听ActivitiEventListener,实现监听不同类型事件,不需要在acitivit中配置任务监听,非常方便