使用rxjava进行文件文本更改检测

时间:2018-11-06 13:32:27

标签: java rx-java reactive-programming rx-java2

我想实现一些代码来检测任何文件更改(txt,doc,pdf等),从而触发RXJava的某些任务。可能吗?有什么建议吗? 预先感谢。

1 个答案:

答案 0 :(得分:0)

当然可以。我可以通过以下方式做到这一点:

  • 使用FilteAlterationObserver中的Apache Commons I/O 图书馆
  • 根据上面链接的文档创建新的观察者 (如果您不想监视整个文件,则可以过滤具体文件 目录)
  • 在观察者中,您可以使用FileAlterationListener,该任务具有onFileChange(File)之类的方法
  • 创建一个返回RxJava Flowable(可感知背压)或Observable类型的方法,该方法包装上面创建的侦听器-这将需要一些RxJava知识-您将需要调用onNext(...) Emitter实现中的Flowable上的方法并定义类型,您需要在Flowable之内返回-例如Flowable<FileEvent>,其中必须定义FileEvent