1、HTTP方式:
   /**
    * 通过HTTP方式获取文件
    *    
    * @param strUrl
    * @param fileName
    * @return
    * @throws IOException
    */

   private boolean getRemoteFile(String strUrl, String fileName) throws IOException {
    URL url = new URL(strUrl);
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    DataInputStream input = new DataInputStream(conn.getInputStream());
    DataOutputStream output = new DataOutputStream( new FileOutputStream(fileName));
     byte[] buffer = new byte[1024 * 8];
     int count = 0;
     while ((count = input.read(buffer)) > 0) {
      output.write(buffer, 0, count);
    }
    output.close();
    input.close();
     return true;
  }
调用时使用下面的数据测试通过,本地得到了test.gif:
     String fileUrl = "http://www.google.cn/intl/zh-CN/p_w_picpaths/logo_cn.gif";
    String fileName = "test.gif";
 
支持FTP方式的获取,只需要如下改动:
     // HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    URLConnection conn = url.openConnection();
下面的测试代码也成功执行,本地环境获得了cu_html.zip文件:
   public static void main(String[] args) throws IOException {
    String fileUrl = "ftp://ftp.cuhk.hk/pub/cu_html.zip";
    String fileName = "cu_html.zip";
    Test1 test = new Test1();
    System.out.println(test.getRemoteFile(fileUrl, fileName));
  }