2014-02-11 40 views
1

Truecrypt或Dropbox等程序为文件处理提供了一个舒适的方式。至少在Windows下,Truecrypt安装了一个感觉自然的新驱动器,就像物理驱动器一样。 Dropbox创建一个可以自动上传/下载数据的新文件夹。用于用户空间文件系统的Java的FileSystemProvider?

如果我想实现类似的东西,那么Java的FileSystemProvider是否正确地实现它?

我想要的是出现一个新文件夹并列出(远程)文件,这些文件不存在于用户的系统上。但是,当用户试图打开这样的文件或将其复制到其他路径时,这应该按预期工作。

+1

当我阅读它时,可以使用FileSystemProvider为Java程序构建像文件系统一样的功能 - 例如,如果要将文件系统映射到数据库 - 但不能插入操作系统的文件系统驱动程序,因此似乎不是程序之外的任何文件系统。 如果有任何方法可以在Java中执行此操作,我会感到非常惊讶。设备驱动程序级的hackery并不是Java特别适合的东西。 (不是说这是不可能的,只是我不希望任何人投入努力使之成为可能。) – keshlam

回答

1

要创建虚拟文件系统,可以在系统中的所有(或选定)应用程序中看到,需要在Windows上创建文件系统驱动程序(在Linux和MacOS上分别存在FUSE和OSXFUSE)。这是一个缓慢而痛苦的过程。

Java的类,如@keshlam在评论中写的,不适合创建系统可见虚拟磁盘。

再次对于Windows,您可以查看我们的回拨文件系统产品,该产品可让您在用户模式下编写业务逻辑并提供预先创建的文件系统内核模式驱动程序。它包含Java API,因此您可以在Java中使用它。由于基于Unix的操作系统和Windows中的文件系统体系结构的差异,API与FUSE中的API不同。

相关问题