`
wankunde
  • 浏览: 162843 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

apache commons vfs 文件监控

 
阅读更多
package test.vfs;

import java.io.File;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.commons.vfs2.FileChangeEvent;
import org.apache.commons.vfs2.FileListener;
import org.apache.commons.vfs2.FileName;
import org.apache.commons.vfs2.FileObject;
import org.apache.commons.vfs2.FileSystemException;
import org.apache.commons.vfs2.FileSystemManager;
import org.apache.commons.vfs2.VFS;
import org.apache.commons.vfs2.impl.DefaultFileMonitor;

/**
 * Hello world!
 * 
 */
public class App {
	public static final Log log = LogFactory.getLog(App.class);

	public static void main(String[] args) {
		FileSystemManager fsManager = null;
		FileObject listendir = null;
		try {
			fsManager = VFS.getManager();
			listendir = fsManager.resolveFile(new File("E://vfs").getAbsolutePath());
		} catch (FileSystemException e) {
			log.error("监视文件夹出错了", e);
			e.printStackTrace();
		}
		
		System.out.println(listendir.getName());
		
		// 定义一个监视器及事件处理程序
		DefaultFileMonitor fm = new DefaultFileMonitor(new FileListener() {
			public void fileCreated(FileChangeEvent event) throws Exception {
				monitor(event);
			}

			public void fileDeleted(FileChangeEvent event) throws Exception {
				monitor(event);
			}

			public void fileChanged(FileChangeEvent event) throws Exception {
				monitor(event);
			}
			
			private void monitor(FileChangeEvent event) {
				FileObject fileObject = event.getFile();
				FileName fileName = fileObject.getName();
				System.out.println(fileName.toString());
			}
		});
		
		
		fm.setRecursive(true); // 设置为级联监控
		fm.addFile(listendir); // 增加监控文件
		fm.start();  // 启动监视器
		
		for(;;){
			try {
				Thread.currentThread().sleep(1000);
				System.out.println(System.currentTimeMillis());
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}
	}
}

 

分享到:
评论

相关推荐

    commons-vfs:Apache Commons VFS

    Apache Commons VFS是一个虚拟文件系统库。 文献资料 可以在上找到更多信息。 可以浏览 。 与Apache Commons VFS Project的用法有关的问题应张贴到。 在哪里可以获得最新版本? 您可以从我们的下载源代码和二进制...

    vfs-s3:适用于Apache commons-vfs(虚拟文件系统)项目的Amazon S3驱动程序

    适用于VFS(Apache Commons虚拟文件系统)的Amazon S3驱动程序最新分支4.xx如何将依赖项添加到您的Maven构建中对于具有嵌入式AWS开发工具包的工件(引导的最简单方法) <dependency> <groupId>...对于没有依赖关系的...

    commons-vfs-2.0.zip

    Apache Commons VFS(Virtual File System)是一个开源Java库,它为不同的文件系统提供了一个统一的接口。这个库允许开发者以相同的方式处理各种类型的文件系统,包括本地文件、FTP、HTTP、ZIP、JAR等。VFS是Virtual...

    commons-logging-1.2.jar commons-vfs-2.2.jar

    使用Apache Commons VFS的SFTP模块,开发者可以轻松地在代码中实现对远程SFTP服务器的文件操作,例如上传、下载、列出目录内容、重命名或删除文件等,而无需关心具体的文件系统细节。Apache Commons Logging则负责...

    commons-vfs-1.0.zip

    Apache Commons VFS(Virtual File System)是Apache软件基金会的一个开源项目,它提供了一个统一的接口来处理各种不同的文件系统。这个接口使得开发者可以方便地在不同的文件系统之间切换,包括本地文件系统、网络...

    commons-vfs-1.0-src

    Apache Commons VFS(Virtual File System)是Apache软件基金会的一个开源项目,它提供了一个统一的接口来处理各种不同类型的文件系统,如本地文件、FTP、HTTP、JAR等。这个项目的核心在于抽象出一个通用的文件系统...

    vfs dropbox plugin:适用于Apache Commons VFS的Dropbox插件-开源

    Apache Commons VFS(Virtual File System)是一个Java库,它提供了一种统一的方式来处理各种不同类型的文件系统。这个库使得开发者可以以一致的方式访问本地文件系统、FTP服务器、HTTP服务器、ZIP档案等。"vfs ...

    commons-vfs2-2.2.jar

    通过VFS对文件进行一些操作,包括写入、读取文件,判断文件是否可读可写等使用2.0版本来实现。

    commons-logging-1.2.jar,commons-vfs2-2.2.jar,jxl.jar

    接下来,`commons-vfs2-2.2.jar`代表Apache Commons VFS(Virtual File System),这是一个强大的文件系统抽象层。它允许开发者通过单一的API访问各种不同的文件系统,包括本地文件系统、FTP、HTTP、SFTP等。Commons...

    commons-vfs-2.1源码

    Apache Commons VFS(Virtual File System)是一个开源项目,由Apache软件基金会开发,它提供了一种统一的方式来处理各种类型的文件系统。VFS允许开发者通过抽象层访问本地文件、远程文件、ZIP档案、JAR文件等,使得...

    apache commons all 中文api合集

    apache commons all 中文api合集

    apache.commons全套jar包下载

    1. Apache Commons IO: 这个模块专注于输入/输出操作,如文件处理、流操作、数据转换等。它提供了一系列方便实用的类和方法,比如FileUtils用于文件操作,IOUtils用于流的读写和复制,以及EndianUtils用于处理字节序...

    apache commons jar(commons所有的jar包,从官网下载提供给大家)

    apache commons jar(commons所有的jar包,从官网下载提供给大家) 因为涉及jar太多,包括有src源代码,只需要3分,希望大家理解,我也是从官网花了很长时间才一个一个下完,需要的请自取。全部是zip文件,每个对应的...

    commons-vfs-cmis:CMIS 的 Apache Commons VFS 提供程序实现

    CMIS 的 Apache Commons VFS 提供程序实现 当前,此实现实际上是测试该想法的原型,但它已经能够: 使用 Atom Pub 绑定连接到 repo.opencmis.org 上的测试存储库 基于基本 URL 的身份验证 访问根文件夹 导航树结构...

    apache-commons-vfs-javadoc-2.0-11.el7.noarch.rpm

    离线安装包,亲测可用

    Apache Commons工具集

    1. **IO**: Apache Commons IO 提供了大量与输入/输出流相关的辅助类,如文件操作、流处理、字符编码转换等。例如,`FileUtils` 类提供了方便的文件操作方法,如复制、移动、删除文件;`IOUtils` 可以用于读写流并...

    基于apache commons.fileupload的文件上传组件,改进了上传速度

    apache commons.fileupload上传组件在上传文件时,在调用parseRequest方法时,先将输入流上传到服务器临时目录,在之后的文件处理过程中,再将临时目录下保存的文件复制到指定的目录,多了一道转储步骤。本实现抽取...

    org.apache.commons.lang jar包下载(commons-lang3-3.1.jar)

    commons-lang3.3.1.jar、Apache Commons包中的一个,包含了一些数据类型工具类,是java.lang.*的扩展。必须使用的jar包。为JRE5.0+的更好的版本所提供 Jar文件包含的类: META-INF/MANIFEST.MFMETA-INF/LICENSE....

    apache commons jar(commons所有的jar包,从官网下载提供.zip

    apache commons jar(commons所有的jar包,从官网下载提供给大家) 因为涉及jar太多,包括有src源代码,只需要3分,希望大家理解,我也是从官网花了很长时间才一个一个下完,需要的请自取。全部是zip文件,每个对应的...

Global site tag (gtag.js) - Google Analytics