首页 > 其他分享 >通过http请求下载doc文件

通过http请求下载doc文件

时间:2024-12-12 10:59:41浏览次数:5  
标签:keyId http String java doc import response 下载

通过地址请求获取文件流,并将其保存到本地

package cn.oyun.speech.module.system.service;

import java.io.IOException;
import java.io.OutputStream;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class FileDownload {
    public static void download(String keyId) {
        String url = "你的请求地址" + keyId;
        HttpClient client = HttpClient.newHttpClient();
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create(url))
                .GET()
                .build();
        try {
            HttpResponse<byte[]> response = client.send(request, HttpResponse.BodyHandlers.ofByteArray());
            if (response.statusCode() == 200) {
                String fileName = "D:\\upload\\" + keyId + ".docx";
                try (OutputStream os = java.nio.file.Files.newOutputStream(java.nio.file.Paths.get(fileName))) {
                    os.write(response.body());
                    System.out.println("识别结果已下载到 " + fileName);
                }
            } else {
                System.out.println("下载失败: " + response.body());
            }
        } catch (IOException | InterruptedException e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        String keyId = "12345";
        download(keyId);
    }
}

 

标签:keyId,http,String,java,doc,import,response,下载
From: https://www.cnblogs.com/1gaoyu/p/18601973

相关文章

  • 如何在易优EyouCms中使用 {$field.file_url} 标签替换旧的下载链接标签?
    在易优EyouCms中,如果您希望使用 {$field.file_url} 标签替换旧的下载链接标签 {$field.downurl},以实现更灵活和高效的文件链接管理,可以按照以下步骤进行操作。以下是详细的步骤和示例代码,帮助您完成这一任务:识别原有标签:首先,在您的模板文件中找到现有的下载链接标签。通常......
  • 两种最常用的HTTP请求方法
    简介在Web开发中,GET和POST是两种最常用的HTTP请求方法,用于从客户端向服务器传输数据。它们各自有不同的用途和特点,适用于不同的场景。1.GET方法GET方法主要用于请求从服务器获取数据。它通常用于读取操作,而不是写入或修改服务器上的数据。以下是GET方法的一些关键特点:......
  • macOS Sequoia 15.2 发布下载,带来 Apple 智能重大更新
    macOSSequoia15.2(24C101)正式版ISO、IPSW、PKG下载iPhone镜像、Safari浏览器重大更新和AppleIntelligence等众多全新功能令Mac使用体验再升级请访问原文链接:https://sysin.org/blog/macOS-Sequoia/查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgmacO......
  • Docker Compose实战二( 轻松部署 MySQL)
      通过过前面的文章(DockerCompose基础语法)你已经掌握基本语法和常用指令认识到DockerCompose作为一款强大工具的重要性,它极大地简化了多容器Docker应用程序的部署与管理流程。本文将详细介绍如何使用DockerCompose部署MySQL,为你提供一个简单而强大的数据库服务器解决......
  • CS61B srping 2018 disc03 https://sp18.datastructur.es/
    为下面方法添加SLList.insert方法,要求签名如publicvoidinsert(intitem,intposition){},如果position大于最后一个元素,那就是添加到最后。(注意这个作业里的SLList和课程中介绍的SLList相比少点东西,故意的,可能是为了让学生开拓思路?)publicclassSLList{privateclassIn......
  • 【Creo 5.0 M280软件下载与安装教程】
    Proe5.0M280终极版本是5.0的最后一个版本,以后将不再更新,这是由PTC推出的一款CAD/CAM/CAE一体化三维设计软件,软件最大的特点就是参数化。软件采用模块的方式,可以广泛地应用于各类草图绘制、零件制作、装配设计、钣金设计、加工处理等领域。1、安装包我用夸克网盘分享了「Proe5.0......
  • docker 相关知识整理总结及应用
    文章目录docker概要Docker基础应用相关命令回顾项目打包/部署/启用/关闭/自启动/进程监听等流程dockercompose基础用法项目应用其他特性dockercompose实例docker概要Docker基础应用相关命令回顾容器生命周期管理命令run:用于创建并启动新容器,有众多参数可指......
  • 【Docker】详细信息和目录介绍
    我们在上一章,讲了虚拟化,虚拟化是把硬件虚拟化,然后创建出来的虚拟机完全隔离,而Docker则是软件(内核)虚拟化,他的隔离性会低于虚拟机。我们将通过3-4周来讲解Docker相关内容,由于涉及到内容较多,就不一一列出来具体的细节,主要从以下几个方面来讲解:Docker基本情况---......
  • docker部署openGauss
    docker部署openGauss参考https://hub.docker.com/r/enmotech/opengauss-litehttps://hub.docker.com/r/enmotech/opengausshttps://hub.docker.com/r/opengauss/opengausshttps://www.cnblogs.com/techbing/p/18266600正文最近因为某种需求,需要本地部......
  • 【Docker】Docker镜像分层
    我们在上一章,讲了虚拟化,虚拟化是把硬件虚拟化,然后创建出来的虚拟机完全隔离,而Docker则是软件(内核)虚拟化,他的隔离性会低于虚拟机。我们将通过3-4周来讲解Docker相关内容,由于涉及到内容较多,就不一一列出来具体的细节,主要从以下几个方面来讲解:Docker基本情况Docker基本命令Dock......