SpringBoot后台java下载文件及注意的地方

下载效果

后台关键代码

  • 控制类中

    @RequestMapping("/file")
    @ResponseBody
    public void file(HttpServletRequest request, HttpServletResponse response) {String name = request.getParameter("file");String path = "/file" + File.separator + name;File imageFile = new File(path);if (!imageFile.exists()) {return;}//下载的文件携带这个名称response.setHeader("Content-Disposition", "attachment;filename=" + name);//文件下载类型--二进制文件response.setContentType("application/octet-stream");try {FileInputStream fis = new FileInputStream(path);byte[] content = new byte[fis.available()];fis.read(content);fis.close();ServletOutputStream sos = response.getOutputStream();sos.write(content);sos.flush();sos.close();} catch (Exception e) {e.printStackTrace();}
    }
    

注意事项

  1. 这里没有控制文件的名称为中文【自行编解码】
  2. response中设置返回的内容格式为【二进制格式】
  3. 当不写response.setHeader("Content-Disposition", "attachment;filename=" + name);的时候,浏览器读到有后缀的文件时会尝试打开;即使下载也会命名为file。
  4. response.setHeader("Content-Disposition", "attachment;filename=" + name);
    • attachment强制性下载
    • filename下载文件的名称
  5. 其他。。。

SpringBoot后台java下载文件及注意的地方相关推荐

  1. springboot上传下载文件(4)--上传下载工具类(已封装)

    因为在做毕设,发现之前的搭建ftp文件服务器,通过ftp协议无法操作虚拟机临时文件,又因为ftp文件服务器搭建的比较麻烦:而 hadoop的HDFS虽然可以实现,但我这里用不到那么复杂的:所以我封装了 ...

  2. SpringBoot上传下载文件及在线预览

    SpringBoot上传下载文件及在线预览 今天大概就说说如何使用SpringBoot进行上传和下载以及在线预览文件 本篇主要介绍上传下载的功能,对于界面就简单一点,大致如下: 一.老规矩还是先看看小 ...

  3. Java下载文件时文件名出现乱码(但文件内容正常)

    今天写文件下载时,发现以前忽略的问题,写个小记录 我们一般使用中文操作系统,所以要求的 文件名编码最好是utf-8,国际化一点 但是,似乎实际上不是这样 1. String fileName=new ...

  4. java文件损坏_用java下载文件 - 文件损坏

    这里是我的code.i写这个下载MP3苍蝇,视频文件&图像. 我用FileOutputStream中处理文件.. 的所有文件都下载好.. MP3文件working..but图像和视频被破坏用j ...

  5. Java下载文件记事本打开不换行问题

    Java下载文件记事本打开不换行问题,其他编辑器可以换行: 原因是下载的内容用的是\n,而win记事本是用的\r\n java 将\n转换为\r\n String script = editText. ...

  6. java 下载文件内容为空_java 下载文件 内容为空。

    Java日志使用slf4j 配置log4j后,有日志文件 但日志文件内容为空 SLF4J的全称是Simple Logging Facade for Java,即简单日志门面. SLF4J并不是具体的日 ...

  7. java下载文件以及预览

    java下载文件以及预览 1.代码如下 /*** 不需要返回HttpServletResponse,会报错* @param response*/@GetMapping("/downloadF ...

  8. SpringMVC(SSM)框架搭建JavaWeb项目时,前端页面文件上传,后台Java下载功能实现及相关问题记录说明

    看在前面:前端页面通过input控件实现文件上传,后台Java使用SpringMVC框架的实现网上有较多教程,但是真正配置一遍下来不报错的较少,所以本博客前面先介绍一遍完整的设置步骤,然后介绍遇到的一 ...

  9. 前台+后台 java下载服务器、本地图片、文件(下载tomcat配置的虚拟路径文件)可指定任意保存路径,SSM框架

    背景:一个系统中有web网站与APP两个客户端,两个客户端有分别的后台,共同部署在一个服务器上,APP有一个上传图片.文件的功能,网站端则可以查看.下载APP上传的图片,下载APP上传的文件. 问题: ...

最新文章

  1. 「欧拉定理」学习笔记(费马小定理)
  2. 命令行启动ssh_如何在虚拟机中正确的第一次启动Linux系统
  3. 红帽子linux开启telnet,RedHat linux 9下配置telnet服务 | 技术部落
  4. 自由职业者在合作之前要弄懂的15个问题
  5. 阿里工程师养了只“二哈”,专治讨厌的骚扰电话
  6. 在哪里编写写php,php扩展编写
  7. jsp页面div上下滑动_H5单页面手势滑屏切换原理
  8. C# —— IEnumerable和状态机
  9. 基于深度卷积神经网络的大豆叶斑病识别
  10. UINavigationController与UITabbarController的样式
  11. LNMP架构 源码安装nginx+mysql+php+memcache+论坛
  12. Java MD5 加密工具类
  13. mysql 多字段求和_sql数据库多字段求和
  14. Springer-Verlag免费下载图书400本
  15. gmap mysql cachet_MySQL中binlog cache使用流程解惑
  16. centos挂载u盘只读_centos挂载u盘只读_针对优盘在linux下文件只读的解决方案
  17. 大数据【Java开发转大数据学习路线分解】(不断细化ing)
  18. Java实现 洛谷 P1159 排行榜
  19. 斯坦福视觉课程CS131简介
  20. python数据获取与文本分析_python文本分析之处理和理解文本

热门文章

  1. 囧,现在才只QQ有远程控制
  2. html+显示平方米,平方米符号怎么打【四种方法】
  3. 2021年下半场品牌入局小红书的三板斧-小红书数据分析
  4. 优秀课程案例|如何用scratch画柱形统计图
  5. 情人节送什么礼物?四款情人节潮流数码好物推荐
  6. PS填充、仿制图章和修补工具
  7. AutoGPT保姆级使用教程
  8. AutoGPT保姆级安装使用教程
  9. 安卓开发SDK等工具下载地址
  10. SSL基础:20:使用x509子命令为其他证书签名