Apache HttpUtils下载文件
创始人
2024-09-04 05:30:17
0

下面是一个使用Apache HttpUtils下载文件的示例代码:

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;

public class FileDownloader {

    public static void main(String[] args) {
        String fileUrl = "http://example.com/file.txt";
        String savePath = "C:/path/to/save/file.txt";

        try {
            downloadFile(fileUrl, savePath);
            System.out.println("File downloaded successfully.");
        } catch (IOException e) {
            System.out.println("Failed to download file: " + e.getMessage());
        }
    }

    public static void downloadFile(String fileUrl, String savePath) throws IOException {
        CloseableHttpClient httpClient = HttpClientBuilder.create().build();
        HttpGet httpGet = new HttpGet(fileUrl);

        HttpResponse response = httpClient.execute(httpGet);
        HttpEntity entity = response.getEntity();

        if (entity != null) {
            try (InputStream inputStream = entity.getContent();
                 OutputStream outputStream = new FileOutputStream(savePath)) {

                byte[] buffer = new byte[1024];
                int bytesRead;
                while ((bytesRead = inputStream.read(buffer)) != -1) {
                    outputStream.write(buffer, 0, bytesRead);
                }
            } finally {
                EntityUtils.consume(entity);
            }
        }
    }
}

以上示例代码使用Apache HttpUtils库下载文件。首先,创建一个CloseableHttpClient实例。然后,创建HttpGet对象,设置文件的URL。接下来,执行HttpGet请求并获取HttpResponse对象。通过HttpResponse对象可以获取文件的HttpEntity。如果HttpEntity不为null,我们可以使用输入流从HttpEntity中读取文件内容,并将其写入输出流中。最后,我们关闭输入流、输出流和HttpEntity。

在main方法中,我们可以指定文件的URL和保存路径,然后调用downloadFile方法来下载文件。如果下载成功,将打印"File downloaded successfully.";如果下载失败,将打印"Failed to download file: ..."并输出错误信息。

相关内容

热门资讯

透视教程!wepoker私人局... 透视教程!wepoker私人局俱乐部,wepoker可以开透视“曝光开挂透视挂辅助插件”1、wepo...
透视讲解!epoker底牌透视... 透视讲解!epoker底牌透视,aapoker安装包可以使用“关于开挂透视挂辅助软件”1、进入游戏-...
透视讲解!wepoker轻量版... 透视讲解!wepoker轻量版有透视,约局吧是否有挂“揭幕开挂透视挂辅助神器”1、wepoker轻量...
透视肯定!htx矩阵wepok... 透视肯定!htx矩阵wepoker辅助,wpk真的有透视嘛“推荐开挂透视挂辅助攻略”暗藏猫腻,小编详...
透视免费!hhpoker视频巡... 透视免费!hhpoker视频巡查真的假的,wpk私人局辅助是真的“解密开挂透视挂辅助插件”1、游戏颠...
辅助透视!wepoker买脚本... 辅助透视!wepoker买脚本靠谱,wepokerplus透视挂“科普开挂透视挂辅助方法”;1、we...
透视有挂!pokemmo辅助工... 透视有挂!pokemmo辅助工具,德州局透视脚本下载安装最新版本“推荐开挂透视挂辅助插件”德州局透视...
透视辅助!哈糖大菠萝挂法,如何... 透视辅助!哈糖大菠萝挂法,如何下载德普之星辅助软件“必备开挂透视挂辅助技巧”1、每一步都需要思考,不...
透视辅助!wepoker透视器... 透视辅助!wepoker透视器免费,wepoker透视挂方法“必备开挂透视挂辅助教程”1、每一步都需...
透视透视!wepoker辅助器... 透视透视!wepoker辅助器如何使用,hhpoker可以控制牌“必备开挂透视挂辅助神器”1、完成w...