大多数情况下,我使用new URL(downURL) #> new File("D:/MyFiles")!!
从文件的给定下载URL下载文件,并将文件保存到我的计算机上的D:/MyFiles
。但不是在本地保存,而是希望存储此文件在我的服务器上,即192.168.1.22
,同时下载。所以如何在上面的代码行中指定IP地址,以便将文件直接保存到特定的服务器。
答案 0 :(得分:1)
正如聊天中所阐明的那样:只有通过NFS,Samba或其他技术使服务器的文件系统可以访问客户端,才能将您下载的内容存储到File
中。
答案 1 :(得分:0)
您需要在服务器上打开一个可以发送数据的端口,可能是http(s),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方法。