JAVA GET 下载本地文件
时间: 2023-10-21 14:24:10 浏览: 133
为了通过Java的GET方法将文件下载到本地,你需要使用HttpClient库。首先,你需要引入HttpClient的全部jar包,并确保你已经设置好了Eclipse的Java开发环境。接下来,你可以使用以下步骤来实现:
- 创建一个HttpGet对象,设置要下载文件的URL。你可以使用httpClient.execute()方法,并将HttpGet对象作为参数来发送GET请求。
- 如果下载链接需要授权或需要设置请求头信息,你可以使用httpGet.addHeader()方法来添加所需的授权信息或请求头信息。
- 执行GET请求后,检查响应状态码是否为200,表示请求成功。
- 获取响应实体,使用HttpResponse.getEntity()方法。
- 创建一个OutputStream对象,用于将文件写入本地磁盘。你可以使用FileOutputStream类,并指定要保存文件的路径。
- 将响应实体的内容通过InputStream读取,使用EntityUtils.toByteArray()方法。
- 将读取到的文件内容写入OutputStream,使用OutputStream.write()方法。
- 关闭InputStream和OutputStream,释放资源。
- 下载完成后,你可以检查本地文件是否成功保存。
以下是一个示例代码,展示了如何使用Java的GET方法将文件下载到本地:
```java import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.HttpClientBuilder; import org.apache.http.util.EntityUtils;
import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream;
public class FileDownloader {
public static void main(String[] args) {
String fileUrl = "http://example.com/file.pdf";
String savePath = "/path/to/save/file.pdf";
HttpClient httpClient = HttpClientBuilder.create().build();
HttpGet httpGet = new HttpGet(fileUrl);
try {
HttpResponse response = httpClient.execute(httpGet);
if (response.getStatusLine().getStatusCode() == 200) {
InputStream inputStream = response.getEntity().getContent();
OutputStream outputStream = new FileOutputStream(new File(savePath));
byte[] buffer = new byte<span class="em">1</span><span class="em">2</span><span class="em">3</span>
引用[.reference_title]
- 1 java使用HttpClient通过url下载文件到本地[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2
allinsert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - 2 3 JAVA通过HttpURLConnection 上传和下载文件的方法[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2
allinsert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]