首页 > 学院 > 开发设计 > 正文

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

2019-11-18 11:12:58
字体:
来源:转载
供稿:网友

  <%@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
Get URL file " + flag);

  %>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表