2012-09-11 67 views

回答

2

假設由「遠程Linux服務器」你的意思是「遠程Linux外殼」,你應該使用一個SSH庫像JSch。您可以找到一個文件下載示例here

+0

感謝,我會試試:) – Felix

0

假設你已經在服務器和訪問文件的有效連接,你可以創建一個File對象與文件的URI:

File f = new File(uri); 
FileInputStream fis = new FileInputStream(f); 

的URI應該是URI的文件,例如「file:// server/path/to/file」。 另請參閱Javadoc for File(URI)

+0

我不知道它應該是什麼樣的。它是文件的路徑嗎?例如:「/ root/files/chat.log」? – Felix

+0

我已編輯我的帖子。 –

0

也許SSHJ可以幫到你嗎? https://github.com/shikhar/sshj

庫的功能包括:

  • 閱讀主機密鑰驗證的known_hosts文件
  • 公鑰,密碼和鍵盤交互認證
  • 命令,子系統和外殼通道
  • 本地和遠程端口轉發
  • SCP +完整的SFTP版本0-3實現
+0

感謝,我會試試:) – Felix

0

這取決於文件的可用性。是通過HTTP,FTP,SFTP還是通過自己編寫的服務器?

如果你想獲得通過HTTP文件,您可以使用此:

HttpURLConnection connec = (HttpURLConnection)new URL("http://host/file").openConnection(); 
if(connec.getResponseCode() != connec.HTTP_OK) 
{ 
    System.err.println("Not OK"); 
    return; 
} 
System.out.println("length = " + connec.getContentLength()); 
System.out.println("Type = " + connec.getContentType()); 
InputStream in = connec.getInputStream(); 
//Now you can read the file content with in 

還有Jsch庫這是SFTP/SCP很好

0

你可以使用任何SSH的Java LIB ,如其他答案中所述,或將文件掛載到NFS共享文件夾中。掛載後,您可以使用普通的java API來訪問文件。

Example

相關問題