`
dh189
  • 浏览: 132977 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

HttpClient4 实现文件下载

    博客分类:
  • java
阅读更多
HttpClient4 实现文件下载,依赖commons-io-1.4.jar 附在附件中。
代码如下:
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;

import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.conn.params.ConnRoutePNames;
import org.apache.http.impl.client.DefaultHttpClient;

public class TestGoogle {
	public static void main(String[] args) throws Exception {
		downloadFile("http://www.dh189.com/images/dh189/dh189.gif", "c://dh189.gif");
	}

	/**
	 * 下载文件
	 * 
	 * @param url 文件http地址
	 * @param dir 目标文件
	 * @throws IOException
	 */
	public static void downloadFile(String url, String dir) throws IOException {
		HttpClient httpclient = new DefaultHttpClient();
		//设置代理
		httpclient.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, new HttpHost("192.168.0.101", 3128));
		HttpGet httpget = new HttpGet(url);
		HttpResponse response = httpclient.execute(httpget);
		HttpEntity entity = response.getEntity();
		InputStream input = null;
		try {
			input = entity.getContent();
			File file = new File(dir);
			FileOutputStream output = FileUtils.openOutputStream(file);
			try {
				IOUtils.copy(input, output);
			} finally {
				IOUtils.closeQuietly(output);
			}
		} finally {
			IOUtils.closeQuietly(input);
		}
	}

}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics