亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

java讀取遠程服務器文件

java讀取遠程服務器文件

長風秋雁 2019-01-18 07:24:03
功能:讀取遠程linux服務器上指定目錄下的文件內容。已知:服務器IP、端口號、用戶名、密碼、路徑、文件名。我使用的是ssh2方式,建立連接,然后只能做到上傳或者取文件,代碼如下: Connection con = new Connection("IP地址"); ConnectionInfo connect = con.connect(); boolean isAuthed = con.authenticateWithPassword("用戶名", "密碼"); SCPClient scpClient = con.createSCPClient(); //從服務器獲取文件 scpClient.get("/home/test /a.txt", "C:/test/b.txt"); //將本地文件上傳到服務器 scpClient.put("C:/test/c.txt", "/home /test/d.txt"); 然后我查詢后發現可以通過會話執行Linux命令,代碼如下: Session session = con.openSession(); //服務器文件移動并改名 session.execCommand("mv -f /home/test/a.txt /home/test2/b.txt"); //從服務復制文件到本地(下載)并改名 session.execCommand("scp [email protected]:/home/test/a.txt /home/test2/b.txt"); //從本地復制文件到服務器(上傳)并改名 session.execCommand("scp /home/test2/b.txt [email protected]:/home/test/a.txt"); 但是我無法知道如何進行文件讀取,因為我只需要讀取文件,在不下載到本地的情況下,直接讀取到內存里執行內容處理,請大神指教。 使用jar包是svnkit-1.9.0-r10609-atlassian-hosted.jar。參考的是這個博客說明,在這個基礎上根據自己的情況改了一些,大致和這個說明一致。JAVA代碼實現遠程服務器的文件操作 - CSDN博客https://blog.csdn.net/tao_ssh...
查看完整描述

1 回答

?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

get 是一個重載方法, 在庫中提供了如下函數 get(String remoteFile, OutputStream target)

ByteArrayOutputStream baos = new ByteArrayOutputStream();
scpClient.get("/home/test /a.txt", baos);

// baos.toByteArray(); // 在內存中的文件字節流
ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray()); // 讀取文件字節流
查看完整回答
反對 回復 2019-03-01
  • 1 回答
  • 0 關注
  • 2402 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號