2

我正在尝试处理文件或文件夹子文件夹中的更改,然后将它们上传到 FTP(如同步文件夹),但我不知道该怎么做.. 任何人都可以给我线索或在哪里找到/李尔成功了吗?我宁愿用 Java 来做。

谢谢!!

4

1 回答 1

4

注意目录中的更改

本教程的摘录:

创建监视服务并注册事件

第一步是使用 FileSystem 类中的 newWatchService 方法创建一个新的 WatchService,如下:

WatchService watcher = FileSystems.getDefault().newWatchService();

接下来,向监视服务注册一个或多个对象。任何实现 Watchable 接口的对象都可以注册。Path 类实现了 Watchable 接口,因此每个要监控的目录都注册为一个 Path 对象。

与任何 Watchable 一样,Path 类实现了两个注册方法。此页面使用双参数版本 register(WatchService, WatchEvent.Kind...)。(三参数版本采用 WatchEvent.Modifier,目前未实现。)

向监视服务注册对象时,您指定要监视的事件类型。支持的 StandardWatchEventKinds 事件类型如下:

ENTRY_CREATE – A directory entry is created.
ENTRY_DELETE – A directory entry is deleted.
ENTRY_MODIFY – A directory entry is modified.
OVERFLOW – Indicates that events might have been lost or discarded. You do not have to register for the OVERFLOW event to receive it.

以下代码片段显示了如何为所有三种事件类型注册 Path 实例:

import static java.nio.file.StandardWatchEventKinds.*;

Path dir = ...;
try {
    WatchKey key = dir.register(watcher,
                           ENTRY_CREATE,
                           ENTRY_DELETE,
                           ENTRY_MODIFY);
} catch (IOException x) {
    System.err.println(x);
于 2012-04-19T15:22:56.060 回答