2012-04-27 60 views
1

我想要這樣做:共享位置上的Java打開文件

File root = new File(「C:/file.txt」);

但是在本地網絡上共享的文件夾。所以讓我們說這個文件是在192.168.1.28上面的命令是如何實現的?

下不工作:

File root = new File("//192.168.1.2/file.txt");

File root = new File("\\\\192.168.1.2/file.txt");

File root = new File("\\192.168.1.2/file.txt");

File root = new File("file:\\192.168.1.2/file.txt");

File root = new File("file://192.168.1.2/file.txt");

非常感謝。

+0

我認爲它可能是Java只是不適用於這樣的網絡文件。解決方法是先複製文件然後在java中打開 – ControlAltDel 2012-04-27 19:42:28

+0

這與applet有什麼關係?你能從命令行執行嗎? – 2012-04-27 21:19:24

回答

0

由於您提供的代碼正在嘗試執行,Java本身並不支持聯網文件共享。

但是,如果您使用庫,如Samba,那麼你可以。但它會和你展示的代碼不同。

java read file from network device

1

您可以使用Apache Commons VFS。這是一個圖書館,讓您對文件進行操作上的各種樣的文件系統,其中一個非常適合您的需要是CIFS文件系統:

提供對文件的訪問CIFS服務器上,如桑巴服務器, 或Windows共享。

URI格式

SMB:// [用戶名[:密碼] @]主機名[:端口] [絕對路徑]

實例

smb://somehost/home 

的提供商CIFS文件系統仍在開發中,但你可以試試看。 我已經使用該庫通過http和ftp協議透明地訪問文件。