如何在java中获取文件和文件夹信息?

问题描述:

我正在做一个项目,它有一个模块作为“文件或文件夹信息”。这意味着,我需要所有打开的文件并打开目录详细信息。如何在java中获取文件和文件夹信息?

例如为:

如果一个文件“aa.txt文件”是由用户开放,该文件是在“BB目录”;输出应该像

aa.txt that file be in open 
bb dir be in open 

而且,如果更改文件,该消息出现由该模块为aa.txt that file has been modified by this user.

+1

它是不是像[Java File Watcher](http://download.oracle.com/javase/tutorial/essential/io/notification.html)? – Nishant 2011-02-17 09:21:07

+0

是的,它是java中的LI文件观察器..... – 2011-02-17 09:28:58

你将不能够这样做,在纯Java,你”您需要使用自定义库(取决于操作系统),因为文件/用户/权限信息隐藏在Java中以使其可移植。您只能检查您是否可以使用标准Java读取或写入文件(与isDirectory相比,您只有更少的方法,但不多)。

+0

基于多次迭代文件,可以将它们的属性与哈希进行比较以检测更改。 – 2011-02-17 09:20:15

请看看Java的java.io.File API。你会得到大部分的东西。 要检查文件是否已被修改,可以使用lastModified()方法。

JDK 7正在给出新的The WatchService API and File Change Notification API。你可以阅读关于它here