使用HttpClient下载文件主要还是文件流的转化的东西比较烦一点。httpclient的东西比较简单的
引用
需要有的Jar;
* commons-httpclient-3.1.jar
* commons-logging-1.04.jar
* commons-codec-1.3.jar
public class HttpClientTest {
private final static String REMOTE_FILE_URL = "http://www.gjt.org/download/time/java/tar/javatar-2.5.tar.gz";
private final static int BUFFER = 1024;
public static void main(String[] args) {
HttpClient client = new HttpClient();
GetMethod httpGet = new GetMethod(REMOTE_FILE_URL);
try {
client.executeMethod(httpGet);
InputStream in = httpGet.getResponseBodyAsStream();
FileOutputStream out = new FileOutputStream(new File("E:\\test_jar\\javatar-2.5.tar.gz"));
byte[] b = new byte[BUFFER];
int len = 0;
while((len=in.read(b))!= -1){
out.write(b,0,len);
}
in.close();
out.close();
}catch (HttpException e){
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
httpGet.releaseConnection();
}
System.out.println("download, success!!");
}
}
这个文章主要是参考自
http://www.hr.utah.edu/blog/2006/03/03/file-download-using-jakarta-commons-httpclient/
使用了缓冲,避免了IO的频繁读写。
还有一篇
http://weifly.iteye.com/blog/145457
直接使用byte[]数组,比较便捷,但是没有使用缓冲,因为频繁的读写,看下来下载速度很慢。
需要的jar包:
分享到:
相关推荐
### HttpClient 实现文件下载 #### 一、简介与原理 在Java开发中,经常会遇到需要通过HTTP协议来获取网络资源的需求,例如从Web服务器下载文件。Apache HttpClient 是一个用于发送HTTP请求的Java类库,它提供了...
通过查看和分析这个文件,可以更深入地理解如何在实际项目中应用HttpClient下载文件。 7. **优化与安全**: - 使用连接池管理器,如`PoolingHttpClientConnectionManager`,可以复用HTTP连接,提高性能。 - 考虑...
HttpClient提供了一种便捷的方式来下载文件: 1. **创建HttpGet请求**:指定要下载文件的URL。 2. **执行请求**:发送请求并获取`HttpResponse`。 3. **准备输出流**:创建一个本地文件,并用`FileOutputStream`...
在Java开发中,HTTPClient和RESTful风格的接口被广泛用于实现文件的上传与下载功能。HTTPClient是一个强大的HTTP客户端库,而RESTful是一种轻量级的、基于HTTP协议的软件架构风格,常用于构建Web服务。在分布式系统...
多线程下载是通过将大文件分割成多个小段,每个线程负责下载一个或多个段,这样可以充分利用多核处理器的计算能力,同时减少单个线程等待网络数据的时间,从而提高整体下载速度。在HTTPClient中,我们可以创建多个...
在本篇讨论中,我们将深入理解如何使用HttpClient来实现远程文件下载。 首先,我们需要导入必要的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>commons-httpclient ...
在讨论HttpClient的文档时,首先应该明确它的使用范围,也即HttpClient能够做什么,以及它不做什么。在文档中,这一点被明确地指出,以帮助用户正确地利用HttpClient。 文档中提到了HttpClient的基础知识,包括以下...
包含翻译后的API文档:httpclient-4.2.5-javadoc-API文档-中文(简体)版.zip; Maven坐标:org.apache.httpcomponents:httpclient:4.2.5; 标签:apache、httpcomponents、httpclient、中文文档、jar包、java; 使用...
在 Arduino 开发环境中,HttpClient 库是一个非常重要的工具,它允许开发者通过 Arduino 板与互联网进行通信,执行 HTTP 请求,从而获取或发送数据到服务器。这个压缩包中的 "HttpClient.cpp" 和 "HttpClient.h" ...
然而,具体code.jar的内容需要根据实际下载的文件和项目的上下文来确定。 在使用httpclient.jar时,开发者需要注意版本兼容性,因为不同的HttpClient版本可能与不同的Java版本和服务器环境有不同的适配性。此外,...
这个标题"HttpClient中文文档,快速开发"表明我们有了一份关于HttpClient的中文版使用指南,对于快速理解和应用HttpClient进行开发来说非常有价值。 HttpClient允许开发者执行各种HTTP方法,如GET、POST、PUT、...
赠送jar包:httpclient-4.5.5.jar;...使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。
apache httpclient 的几个简单封装,基于httpclient4.3. 示例代码: long len = HttpUtil.download("http://localhost/upload/817.mov", "D:/test.mov"); 内部含有源码jar和lib,请翻阅 httpdownloadutil.jar
httpclient.jar文件包含了HttpClient的所有核心类和方法,使得开发者可以便捷地集成到自己的Java应用中。 二、主要功能与API 1. HTTP请求:HttpClient允许开发者创建各种类型的HTTP请求,如GET、POST、PUT、DELETE...
文件下载通常通过GET请求实现,HTTPClient 4中的`HttpGet`类就是为此设计的。你可以创建一个`HttpGet`实例,指定文件的URL,然后使用`HttpClient.execute()`方法发送请求。为了保存下载的文件,你可以创建一个`...
在Java环境中,`httpclient.jar`是HttpClient库的二进制文件,通常通过Maven或Gradle等构建工具作为依赖引入项目。将`httpclient.jar`下载并添加到项目类路径中,即可使用HttpClient的功能。 总的来说,HttpClient...
通过HttpClient实现远程下载,本例子通过java代码实现
如果需要通过POST请求上传文件,可以使用`addHeader()`设置MIME类型,然后用`write()`写入文件内容。 7. **错误处理**: 库还提供了错误检查功能,如`http.errorToString()`可以将错误代码转换为人类可读的字符串...
《HttpClient 4.5.3官方API中文文档详解》 HttpClient是Apache软件基金会下的一个开源项目,主要用于构建HTTP客户端应用程序,提供了丰富的功能和强大的性能。本文将基于4.5.3版本的HttpClient官方API中文文档,...