2013-03-15 136 views
0

如何裝飾一些遠程文件系統,如在java目錄中的路徑? 例如是這樣的:虛擬文件系統映射到本地文件

File decoratorFileSystem = new File("ftp://host/path"); // this does not work of course 
... 
File file1 = new File(decoratorFileSystem, "somefile1"); 
File file2 = new File(decoratorFileSystem, "somefile2"); 

所以當我將使用file1file2或其他裝飾的文件,我從裝飾文件系統訪問遠程文件,好像與對應限制它的本地文件。

我想用虛擬文件系統從「org.apache.commons.vfs2.provider ......」但我不知道這是正確的方式...

回答

0

Java中的File永遠只能引用由OS安裝的文件系統上的真實文件(即,OS知道是文件的東西)。

虛擬文件系統不能以這種方式訪問​​(除非它由操作系統處理,即如果您直接在Linux下掛載FTP目錄,則可以使用File)。

NIO2的newer Path class(可用於Java 7及更高版本)但明確設計時考慮了虛擬文件系統。

看看this tutorialthe FileSystemProvider class找出如何定義你自己的虛擬文件系統。 Zip File System Provider是一個示例實現。

相關問題