this.historicalSchemePath//本地存储的地址比如c:/

@GetMapping(value = "/getsCheme")
public void getsCheme(@RequestParam(name="fid") String fid,HttpServletRequest req,HttpServletResponse resp) {CtglPlaninfo ctglPlaninfo=ctglPlaninfoMapper.queryRecord(fid);String fapath="//"+ctglPlaninfo.getFapath();// 通过id 查询 数据表 地址//获取配置文件地址// 文件地址 = 配置文件地址+数据表地址File file=new File(this.historicalSchemePath);if(!file.exists()){try {file.mkdirs();}catch (Exception e){e.printStackTrace();}}File file2=new File(this.historicalSchemePath+fapath);//获取文件名String fileName=fapath.substring(fapath.lastIndexOf("//")+2);if(file2.exists()){FileInputStream in=null;HttpServletResponse response=resp;response.setCharacterEncoding("UTF-8");response.setContentType("application/octet-stream;charset=utf-8");response.setHeader("Content-disposition","attachment;filename="+fileName);try{in=new FileInputStream(this.historicalSchemePath+fapath);byte[]a=new byte[1024];int b;while ((b=in.read(a))!=-1){response.getOutputStream().write(a,0,b);}}catch (Exception e){e.printStackTrace();}finally {if(null!=in){try{in.close();}catch (IOException e2){System.out.println("关闭输入流错误");}try{response.getOutputStream().close();}catch (IOException e){System.out.println("输出流关闭错误");}}}}else {try {resp.getWriter().println("查不到文件");}catch (IOException e){System.out.println("resp返回前端信息异常");}}
}

java读本地文件并通过接口返回文件流相关推荐

  1. 前端下载文件方法、 后台接口返回二进制文件流、前端通过blob对象并使用fetch/axios实现下载

    在项目中实现文件下载的方法: 一.接口返回url或者get请求访问接口直接下载. window.location.href = xxxurl 使用a标签下载 const alink= document ...

  2. 为什么阿里巴巴Java开发手册中强制要求接口返回值不允许使用枚举?

    在阅读<阿里巴巴Java开发手册>时,发现有一条关于二方库依赖中接口返回值不允许使用枚举类型的规约,具体内容如下: 在谈论为什么之前先来科普下什么是二方库,二方库也称作二方包,一般指公司内 ...

  3. Java互联网架构-如何设计服务接口API限流功能

    API 概念的出现,远远早于个人计算机的诞生,更不用说网络的诞生了.在公用数据处理的早期,为了一个应用能够与其它系统交互,开发者便已开始设计可公开访问并描述清晰的"接入点".早在那 ...

  4. ant 接口返回文件流,前端自动下载实现

    封装网络请求 : reqAxios.js import Axios from 'axios'; import qs from 'qs'; import { router } from 'umi'; i ...

  5. tp6实现文件上传接口(单文件上传)

    返回给前端的接口格式: 路由: <?php // +---------------------------------------------------------------------- ...

  6. linux 进程间通信 dbus-glib【实例】详解四(上) C库 dbus-glib 使用(附代码)(编写接口描述文件.xml,dbus-binding-tool工具生成绑定文件)(列集散集函数)

    linux 进程间通信 dbus-glib[实例]详解一(附代码)(d-feet工具使用) linux 进程间通信 dbus-glib[实例]详解二(上) 消息和消息总线(附代码) linux 进程间 ...

  7. Golang 调用http 文件上传接口 进行上传文件

    远程服务器有一个文件上传接口,文件用于保存到服务器本地,用go如何调用此接口将文件上传至服务器? 首先,文件上传请求方 与 接收方 要协调工作(解析等工作) 接收方: func UploadFileT ...

  8. 【微服务|openfeign】使用openfeign远程调用文件上传接口

    文章目录 服务提供者-文件上传接口 FeignClient 消费者-通过FeignClient调用文件上传接口 服务提供者-文件上传接口 @PostMapping("/saveFile&qu ...

  9. 第七章 将文件内容复制到另外文件

    文章目录 第七章 将文件内容复制到另外文件 示例 第七章 将文件内容复制到另外文件 示例 本例显示了一个使用本文前面介绍的几个%Library.File方法的样例类. 在示例类Demo.FileDem ...

最新文章

  1. 敏捷开发:如何通过回顾保持学习状态
  2. java判断字符串中是否包含中文 过滤中文
  3. UML:类关系的图例
  4. linux下RocketMQ的安装和API调用中出现的问题的解决 MARK一下
  5. mysql查询加伪列_SQL Server数据库中伪列及伪列的含义详解
  6. 遥感数字图像处理——第六章——几何校正
  7. VMware workstations pro16.23已经安装vmware tool,Ubuntu仍然无法复制粘贴
  8. 计算机硬盘序列号有什么意义,硬盘序列号会/为什么会改变
  9. 2021-2027全球与中国全自动探针台市场现状及未来发展趋势
  10. [含论文+源码等]S2SH+mysql水费管理系统[包运行成功]
  11. 微信小程序如何测试?
  12. 【分享】我在名牌大学毕业后的经历
  13. 《计算机网络》第三章课后答案第七版谢希仁
  14. html5 车牌识别,深度学习实现车牌识别
  15. 2019年 十款Mac上必备的实用软件列表
  16. cocos creator微信小游戏截图
  17. 图像处理之天空区域识别
  18. matlab画磁滞回线,[画图的问题]怎么画类似于磁滞回线的图像?一个x值对应两个y值的...
  19. [mysql]-日期-时间-riqi-shijian
  20. 做你自己思想世界的君王

热门文章

  1. 虚拟机系统 无网络连接网络连接网络连接服务器,电脑中VMware虚拟机系统网络适配器未成功连接网络的解决方法...
  2. el-dialog弹窗偶尔遮罩层全部变黑
  3. cTorrent-linux命令行BT下载工具 cTorrent下载
  4. 计算机性能指标决定于,关于计算机显卡的性能指标盘点
  5. 极客应如何创业?(一)
  6. Mac下 常用程序 无限试用方法
  7. 吃鸡进游戏显示错误服务器繁忙,绝地求生游戏崩溃进不去怎么办 服务器炸了繁忙解决方法...
  8. 计算机应用文摘杂志影响因子,计算机应用文摘杂志
  9. 机器视觉系统设计过程及关键技术
  10. GIS工程师的成长之路