0

我需要一个独立于平台的文件系统,并且我需要在其中接收用户在 java 应用程序中对文件系统所做的任何更改。

或者是否有一个 API 可以让我收到有关更改的通知以及在哪里可以防止此类更改?

例如,当用户在该文件系统中移动文件时,我希望收到有关它的通知并能够阻止该移动。

哪些平台独立的文件系统具有这些属性?

4

3 回答 3

3

我没有平台独立文件系统之类的东西。有在多个平台上实现的文件系统,但如果应用程序需要使用不同的 API 来访问它们,这并没有多大帮助。取决于平台/

有一个独立于平台的文件系统API之类的东西,并且该java.nio.file包包含标准的 Java 产品。

例如,该WatchServiceAPI 允许您获取有关指定目录中文件的某些更改的通知。但是,它不会专门检测“动作”,当然也不允许 Java 应用程序否决某个动作。事实上,我很确定操作系统系统调用级别不支持此(否决)。

在 Linux 上,我认为实现一个应用程序可以否决另一个程序执行的文件系统的唯一合理方法是编写自定义 FUSE 文件系统实现。

于 2013-07-05T14:27:45.080 回答
1

Java NIO API 可以做到这一点,并且已经独立于平台http://docs.oracle.com/javase/tutorial/essential/io/notification.html

于 2013-07-05T14:26:02.180 回答
1

FAT / FAT32 独立于平台。

但我从未听说过当用户编辑或移动文件时通知的 FS。总是有应用程序监视这些文件并执行通知。

于 2013-07-05T14:26:38.900 回答