2011-07-22 25 views
2

當我在Mac OS上運行這樣的代碼:在Java中使用本地應用程序在遠程計算機上打開PDF文件?

Runtime.getRuntime.exec("open testFile.pdf"); 

Mac OS的運行Acrobat中打開本地的PDF文件。

如何在文件位於遠程計算機上時執行此操作?
\\remoteHost\share\testFile.pdf

我嘗試這樣做,是這樣的:
Runtime.getRuntime.exec("open \\\\remoteHost\\share\\testFile.pdf");

,但我失敗了。

謝謝!

+0

您是否嘗試過使用'Runtime.getRuntime.exec(「open \\\\ remoteHost \\ share \\ testFile.pdf」);' –

回答

0

Runtime.getRuntime().exec(String)只是將字符串傳遞給OS來處理它。所以,如果你想運行命令

open \\remoteHost\share\testFile.pdf 

你必須把它傳遞給exec()。請記住逃脫\(通過更換每\ \\)

Runtime.getRuntime().exec("open \\\\remoteHost\\share\\testFile.pdf"); 

當然,運行程序應該在遠程計算機的權限用戶。如果您需要設置其他用戶,請使用打開的程序命令行參數。

0

我不認爲有可能在使用打開命令時直接指定SMB共享的路徑。如果您想使用打開,則必須將該共享安裝爲本地目錄。有關說明,請參閱http://osxdaily.com/2009/09/24/access-and-mount-an-smb-share-via-command-line/

雖然這樣的解決方案會非常脆弱。如果你想要一個更可靠的解決方案,我建議使用JCIFS(http://jcifs.samba.org/)下載文件在本地,然後使用

Desktop.getDesktop().open(pdfFile); 

打開下載的文件。

+0

謝謝!但我想修改本地Mac OS中的遠程文件,所以我無法在本地下載文件 – hill

相關問題