· [Java论坛][安全论坛][数据库论坛][操作系统论坛]
· [访谈] 网银安全系列访谈之:惊心动魄网银故事
· [热点专题] 网银安全系列 3G上网卡巡礼
· [订阅IT技术周刊][IT资源下载专区][病毒求助专区]
· [热点] 跨站脚本十二问 四步防范Conficker
· [热点] Windows 7 RC版公开下载 憾缺中文版

从URL获取文件保存到本地的JAVA代码

发布时间:2007.03.26 11:53     来源:赛迪网技术社区    作者:blackpupil

<%@page import="java.net.*,java.io.*"%>
<%!
  public boolean saveUrlAs(String photoUrl, String fileName) {
//此方法只能用户HTTP协议
    try {
      URL url = new URL(photoUrl);
      HttpURLConnection connection = (HttpURLConnection) url.openConnection();
      DataInputStream in = new DataInputStream(connection.getInputStream());
      DataOutputStream out = new DataOutputStream(new FileOutputStream(fileName));
      byte[] buffer = new byte[4096];
      int count = 0;
      while ((count = in.read(buffer)) > 0) {
        out.write(buffer, 0, count);
      }
      out.close();
      in.close();
      return true;
    }
    catch (Exception e) {
      return false;
    }
  }
 
public String getDocumentAt(String urlString) {
//此方法兼容HTTP和FTP协议
    StringBuffer document = new StringBuffer();
    try {
      URL url = new URL(urlString);
      URLConnection conn = url.openConnection();
      BufferedReader reader = new BufferedReader(new InputStreamReader(conn.
          getInputStream()));
      String line = null;
      while ( (line = reader.readLine()) != null) {
        document.append(line + "\n");
      }
      reader.close();
    }
    catch (MalformedURLException e) {
      System.out.println("Unable to connect to URL: " + urlString);
    }
    catch (IOException e) {
      System.out.println("IOException when connecting to URL: " + urlString);
    }
    return document.toString();
  }
%>
<%
//测试
  String photoUrl = "http://ad4.sina.com.cn/200601/12/43932_750450.jpg";
  String fileName = photoUrl.substring(photoUrl.lastIndexOf("/"));
  String filePath = "d:/ghost/";
  boolean flag = saveUrlAs(photoUrl, filePath + fileName);
  out.println("Run ok!\n<BR>Get URL file " + flag);
%>

(t006)


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 谈谈在Oracle下开发JAVA程序的问题 (01-08) · 如何用保存数据库连接参数代码详解 (12-01)
· Linux系统下发送Email的C语言代码 (11-15) · 将Linux代码移植到Windows的简单方法 (10-31)
· 联通与电信达成协议 互发短信取消106代码 (09-29) · JAVA基础:提升JSP应用程序的七大绝招 (09-26)
· JAVA基础:JDBC优化数据库连接 (09-26) · 在Java中应用设计模式-Factory Method (09-08)
· 81家SP更换代码 其中40家北京公司也在其内 (09-08) · 第二批SP今日更换代码 上海有六家公司领证 (09-07)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
资讯 通信 IT产品 IT技术 信息化
2009第七届中国电脑商年会直播
·创业投资系列访谈:产业..
·特别策划:视频网站系列..
·专题:网游虚拟货币新规..
专题:6月上市手机新品回顾及7月新机展望
·2009年中国电信业信息化..
·专题:把iPhone 3GS“解..
·WAPI重启国际标准进程 ..
专题:09年中盘点-联想春季打印机新品回顾
·InfoComm 2009 视听与集..
·网游背后的故事 网游服..
·[专题]联想ThinkPad T40..
BizSpark:微软为技术创业企业点燃火花
·社区活动:我的IT求知生..
·访谈:内网安全2009系列..
·安全访谈:网银安全之Sa..