
java.lang.Object
|---ohos.utils.FileWatcher
public class FileWatcher
extends Object提供监控指定文件目录状态变化的能力。
要监控文件,首先需要实现 FileWatcher.EventHandler 类,该类处理被监控文件目录的状态变化事件。 然后,您应该使用 addWatch(java.nio.file.Path,ohos.utils.FileWatcher.EventHandler,boolean,java.nio.file.WatchEvent.Kind...) 方法添加要监视的文件目录和 关联的事件处理程序。 当指定目录中的文件发生更改时,将触发事件处理程序来处理该事件。
FileWatcher 支持 StandardWatchEventKinds 中定义的以下事件:
| 修饰符和类型 | 类 | 描述 |
|---|---|---|
| static interface | FileWatcher.EventHandler | 提供处理文件事件的处理程序。 |
| 构造函数 | 描述 |
|---|---|
| FileWatcher() | 默认构造函数用于创建文件观察者实例。 |
| 修饰符和类型 | 方法 | 描述 |
|---|---|---|
| void | addWatch(Path directory, FileWatcher.EventHandler eventHandler, boolean isRecursive, WatchEvent.Kind>... events) | 添加监视程序以监视指定的文件目录。 |
| 从类 java.lang.Object 继承的方法 |
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
public FileWatcher()
默认构造函数用于创建文件观察者实例。
Throws:
| Throw名称 | Throw描述 |
|---|---|
| RuntimeException | 如果没有文件观察器服务,则引发此异常。 |
public void addWatch(Path directory, FileWatcher.EventHandler eventHandler, boolean isRecursive, WatchEvent.Kind>... events)
添加监视程序以监视指定的文件目录。
您可以指定要监视的文件事件。 如果未指定事件,则监视文件目录上的所有事件。
参数:
| 参数名称 | 参数描述 |
|---|---|
| directory | 指示要监视的文件目录。 |
| eventHandler | 指示要添加指定文件目录的事件处理程序。 |
| isRecursive | 指定是否递归监视指定的文件目录。 |
Throws:
| Throw名称 | Throw描述 |
|---|---|
| NullPointerException | 如果 directory 或 eventHandler 为 null,则引发此异常。 |
| RuntimeException | 如果添加观察者失败,就会引发此异常。 |