Spring boot 项目下载jio文件多1K 问题所在
后来发现所有文件下载之后都会多出几K 有的更多
String filePath = String.valueOf(resultMap.get("file_path"));String file_name = String.valueOf(resultMap.get("file_name"));try(InputStream inStream = new FileInputStream(uploadPath + filePath + id + resultMap.get("file_type"));){response.reset();if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {file_name = java.net.URLEncoder.encode(file_name, "UTF-8");} else {// 非IE浏览器的处理: file_name = new String(file_name.getBytes("UTF-8"), "ISO-8859-1");}response.setCharacterEncoding("UTF-8");response.setContentType("bin");response.addHeader("Content-Disposition", "attachment; filename=\"" + file_name + "\"");OutputStream outputStream = response.getOutputStream();byte[] bytes = new byte[1024];while (0 != IOUtils.read(inStream, bytes)) {IOUtils.write(bytes, outputStream);}IOUtils.closeQuietly(outputStream);}
后来发现应该是这个地方的问题
byte[] bytes = new byte[1024];while (0 != IOUtils.read(inStream, bytes)) {IOUtils.write(bytes, outputStream);}
因为文件的大小可能不能整除1024 所以最后的一次循环会把数组中不是文件的部分也写入输出流中,所以下载下来的文件字节就会变大。后来也发现只要是这样下载下来的文件字节大小都能整除1024.
Spring boot 项目下载jio文件多1K 问题所在相关推荐
- Spring boot 项目下载jio文件多1K
通过Spring boot项目下载的文件 会比正常的文件多1K 我这里用了nginx ,百度说的都是nginx下载失败 我没有找到我这种情况. 实在是找不到原因了 有没有大佬遇到这种情况请帮帮忙 这个 ...
- Spring Boot 项目的这些文件都是干啥用的?
本文我们了解下 Spring Boot 的目录结构,了解一个事物,清楚了它的结构,明白了内部元素各自的职责,就能很好的认识到它的组织方式和运行机制. 我们以 IntelliJ IDEA 这个 IDE ...
- Spring Boot项目application.yml文件数据库配置密码加密
在Spring boot开发中,需要在application.yml文件里配置数据库的连接信息,或者在启动时传入数据库密码,如果不加密,传明文,数据库就直接暴露了,相当于"裸奔"了 ...
- IDEA整合Spring Boot项目访问jsp文件
官方不推荐使用jsp文件作为视图!!! 配置如下: 1,Pom文件中添加依赖: <!--添加jsp依赖 --><dependency><groupId>org.sp ...
- Spring Boot项目集成AWS SDK连接到AWS S3,实现上传下载功能
本文主要描写在Spring Boot项目里集成AWS SDK连接到AWS S3,实现上传下载功能的具体代码和注意事项.如有不足和错误之处,欢迎指正. AWS S3相关介绍 AWS S3(官网): ht ...
- Spring Boot-Spring Tool Suit + Gradle 构建第一个Spring Boot 项目01
文章目录 概述 使用Spring Tool Suite构建Spring Boot项目 下载STS 插件安装 搭建第一个Spring Boot项目 启动项目 概述 通常,构建一个Spring Boot项 ...
- CentOS 7 快速搭建JavaWeb开发环境并部署Spring boot项目(纯干货、详细)
前言: 服务器:阿里云服务器ECS,装载CentOS 7系统 终端模拟工具&文件传输软件:xshell 7 \ xftp 7 IDE: IntelliJ IDEA 2022.1 部分内容参考阿 ...
- git提交过滤target文件 idea_找不到或无法加载主类(IDEA中启动spring boot项目)
版权声明:本文为博主原创文章,如果转载请给出原文链接:http://www.jufanshare.com/content/142.html 提示:需要对IDEA编辑工具使用熟悉 出现一个问题,就是sp ...
- 后端开发实践:Spring Boot项目模板,拿去用吧!
点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:干掉 Navicat:这个 IDEA 的兄弟真香!个人原创100W+访问量博客:点击前往,查看更多 作者:无知者 ...
最新文章
- mysql通过查看跟踪日志跟踪执行的sql语句
- Nature | 原核生物基因的生物地理学研究
- 从浏览器多进程到JS单线程,JS运行机制最全面的一次梳理
- 《JavaScript入门经典(第6版)》——2.7 问答
- 施尧耘:量子计算终将实现;段路明:大规模量子计算还任重道远
- 生产服务器怎么dmp堆栈信息,如何根据程序崩溃时的DMP文件使用WinDbg查找调用堆栈...
- php的mbstring模块安装折腾记录
- 通过C#中的在线文件自动更新应用程序
- 连接思科无线经常出现获取不到地址_思科(cisco)路由器登录IP地址默认密码说明...
- SIM300命令参考
- IEEE Transactions Latex模板使用经验总结
- 愿望实现了!办公软件全部装进口袋
- java 万年历绪论_基于安卓Android的万年历的设计与开发(含录像)
- 听老外吐槽框架设计,Why I Hate Frameworks?
- 【大猛子与曾经的无趣生活】
- 深入理解Camera 基础知识点
- 电容器功率密度和能量密度
- duffing matlab,duffing方程matlab
- 如何理解Redis中的事务
- html两个盒子怎么左右对其,多个div两端对齐