如何从java中的另一台服务器读取文件?

时间:2011-07-07 05:32:25

标签: java

我想从位于不同位置的服务器读取文件。

我有服务器的IP,用户名和密码。

如何在java中读取文件?

2 个答案:

答案 0 :(得分:2)

  • 您可以创建本地FTP服务器并将远程文件读取为类似

    的字节数组
    try {
            URL url = new URL("ftp://localhost/myDir/fileOne.txt");
            InputStream is = url.openStream();
            ByteArrayOutputStream os = new ByteArrayOutputStream();                 
            byte[] buf = new byte[4096];
            int n;                  
            while ((n = is.read(buf)) >= 0) 
                    os.write(buf, 0, n);
            os.close();
            is.close();                     
            byte[] data = os.toByteArray();
         } catch (MalformedURLException e) {
            e.printStackTrace();
         } catch (IOException e) {
            e.printStackTrace();
         }
    
  • 通过Http

    读取二进制文件
    URL url = new URL("http://q.com/fileOne.txt");             
    InputStream is = url.openStream();
    

答案 1 :(得分:0)

您应该只使用scp。

,而不是使用Java

如果需要从Java执行此操作,您始终可以将scp命令形成为字符串并将其传递给Runtime.getRuntime.exec()。 (但是请注意源代码中的密码。)