- package org.sce.web;
- import java.io.BufferedInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.net.HttpURLConnection;
- import java.net.URL;
- public class Download implements Runnable {
- private static final int BUFFER_SIZE = 4096;
- private String destUrl;
- private String fileName;
- public Download(String destUrl, String fileName) {
- this.destUrl = destUrl;
- int i = destUrl.lastIndexOf("/");
- this.fileName = fileName + destUrl.substring(i + 1);
- }
- public void run() {
- try {
- saveToFile(destUrl, fileName);
- System.out.println("download done,saved as: " + fileName);
- } catch (IOException e) {
- System.out.println("downloading error: " + e.getMessage());
- }
- }
- public void saveToFile(String destUrl, String fileName) throws IOException {
- FileOutputStream fos = null;
- BufferedInputStream bis = null;
- HttpURLConnection httpconn = null;
- URL url = null;
- byte[] buf = new byte[BUFFER_SIZE];
- int size = 0;
- // create connection
- url = new URL(destUrl);
- httpconn = (HttpURLConnection) url.openConnection();
- // connect the resource
- httpconn.connect();
- // get BufferedInputStream
- bis = new BufferedInputStream(httpconn.getInputStream());
- // create FileOutputStream for file
- fos = new FileOutputStream(fileName);
- System.out.println("connecting " + destUrl + "...");
- //save file
- while ((size = bis.read(buf)) != -1)
- fos.write(buf, 0, size);
- fos.close();
- bis.close();
- httpconn.disconnect();
- }
- public static void main(String[] args) {
- String url="http://www.cxybl.com/templets/default/p_w_picpaths/logo1.gif";
- String path="D:/download/";
- Download d=new Download(url,path);
- Thread th = new Thread(d);
- th.start();
- }
- }
Java实现的文件下载
精选 转载下一篇:我的友情链接
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java实现文件的下载
如何来实现日志的下载,这样的一个功能,前端我们用到的是window.open(...)这样可以发送一个get请求到后台,这个里面res.setHe
java 开发语言 get请求 服务器 系统日志 -
java文件实现文件的上传和下载
文件上传是最古老的互联网操作之一,20多年来几乎没有怎么变化,还是操作麻烦、缺乏交互、用户体验差。 一、前端代码 英国程序员Remy Sharp总结了这些新的接口 ,本文在他的基础之上,讨论在前端采用HTML5的API,对文件上传进行渐进式增强: 1.1 传统形式 文件上传的传统形式,是使用表单元素
java实现文件夹上传 大文件上传组件 asp.net上传大文件 java上传文件夹