簡體   English   中英

如何將下載的文件保存到另一台服務器

[英]How to save downloaded file to another server

我通常使用new URL(downURL) #> new File("D:/MyFiles")!! 從給定的文件下載網址下載文件,並將文件保存到D:/MyFiles上的D:/MyFiles 。但是,我希望將此文件存儲在服務器上,即192.168.1.22而不是本地保存。我可以在上面的代碼行中指定IP地址,以便將文件直接保存到特定服務器。

正如聊天中所闡明的:僅當您通過NFS,Samba或其他技術使服務器的文件系統對客戶端可用時,才可以將下載的內容存儲到File

您將需要在服務器上有一個開放端口,可以在其中向http,ftp,ftp等發送數據,以便將數據傳輸到服務器。 如果使用http,則可以使用java.net.HttpURLConnection連接到服務器並打開OutputStream並將數據寫入其中。

這是一個示例(我還沒有測試過):

public void writeDataToServer()
{
    URL downloadURL=new URL("example.com/example.pdf");
    URL serverIP=new URL("192.168.0.1");
    URLConnection downloadConnection=downloadURL.openConnection();
    URLConnection serverConnection=serverIP.openConnection();
    InputStream downloadStream=downloadConnection.getInputStream();
    OutputStream serverStream=serverConnection.getOutputStream();
    while((int r=downloadStream.read())!=-1)
    {
        serverStream.write(r);
    }
    downloadStream.close();
    serverStream.close();
}

在向服務器打開流之前,您需要在此處捕獲一些異常並指定要使用的HTTP方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM