文件下载或者预览(download)
使用Servlet实现下载文件的功能http://www.cnblogs.com/ys-wuhan/p/5772730.html
springMVC 文件下载http://blog.csdn.net/clj198606061111/article/details/20743769
注意:
文件是下载还是预览关键取决于请求头attachment(附件),但是都必须有filename;
代码如下:
protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {String path = "C:\\Users\\Administrator\\Desktop\\离职证明_模板.doc";
// String path = "C:\\Users\\Administrator\\Desktop\\a.png";
// String path = "C:\\Users\\Administrator\\Desktop\\虚拟机账号.txt";int lastIndexOf = path.lastIndexOf("\\");String fileName = path.substring(lastIndexOf + 1);InputStream inputStream = new FileInputStream(path);ServletOutputStream outputStream = response.getOutputStream();String filename = URLEncoder.encode(fileName, "utf-8"); //解决中文文件名下载后乱码的问题 System.out.println(fileName);String mimeType = getServletContext().getMimeType(filename);System.out.println(mimeType);response.setCharacterEncoding("utf-8");response.setContentType(mimeType);
// attachment代表附件的形式传输,前端会默认下载,filename文件名称
// response.setHeader("Content-Disposition","attachment; filename="+filename);
// 如果想能够直接查看则直接查看,不能查看时下载,可以去掉attachment,但是仍然要保留filenameresponse.setHeader("Content-Disposition","filename=" + filename);int len = -1;while((len = inputStream.read()) != -1) {outputStream.write(len);}inputStream.close();}
文件下载或者预览(download)相关推荐
- Android wps文件下载、预览
Android wps文件下载.预览 可能大家都遇到了Android处理办公文件不太方便的问题,先强调一点Android是做不到在线预览的,目前的解决方案都是先下载在打开,这里我提供我常用的两种方案, ...
- C++ 海康摄像头实现录像文件下载,预览,裸码获取
前言示例代码链接: 示例代码官方网址 预览 方式一(由SDK实现解码显示)#include <stdio.h>#include <iostream>#include " ...
- java 文件下载预览_javaweb简单的实现文件下载及预览
@ResponseBody @RequestMapping(value="/downloadFile")public void downloadFile(HttpServletRe ...
- uniapp实现h5、app、微信小程序三端pdf文件下载和预览
以下代码兼容三端,app,h5,微信小程序,经过个人测试 手机端有两种方法,使用renderjs或者uniapp的api 两者的区别 使用renderjs的写法,会提示用户是否下载文件,下载完成后用户 ...
- vue pdf文件下载 / 在线预览真是有效!
1.pdf下载 首先说下下载问题, 通过文件地址下载 存留问题 无法下载 试过a标签搭配文件地址下载,最后发现行不通,一点击下载就直接打开了,不符合需求. 通过文件流形式,完美解决, 这里通过后端把文 ...
- java文件预览和文件下载响应设置
文章目录 文件下载 文件预览 rpc接口调用 文件下载 /*** * 文件下载*/@GetMapping("/downLoadFile")public void downLoadF ...
- SpringBoot+MongoDB GridFS文件上传、下载、预览实战
SpringBoot + MongoDB GridFS 随着web 3.0的兴起,数据的形式不局限于文字,还有语音.视频.图片等.高效存储与检索二进制数据也成为web 3.0必须要考虑的问题.然而这种 ...
- Spring Boot 实现万能文件在线预览-开源学习一
Spring Boot 实现万能文件在线预览-开源学习一 1. 项目特性 支持word excel ppt,pdf等办公文档 支持txt,java,php,py,md,js,css等所有纯文本 支持z ...
- 基于SpringMVC+EasyPoi,采用Excel模板方式实现Excel在线预览和导出(2021版)
一.背景:某工厂需要查看指定年度的设备维护计划,一般需要把全年72个周,每个周做哪些维护工作排班排出以及工时统计出来,在正式生成维护工单之前,需要先确认下.维护计划大概是某一周要执行哪些维护项,大概长 ...
最新文章
- 2015年度互联网安全报告发布 移动支付成重灾区
- 如何在TEASOFT中加入直线与曲线?
- 正则化方法:数据增强、regularization、dropout
- 5脚12v继电器接线图解_【电器元件002】你真的懂汽车继电器么
- 《你的灯亮着吗》读书笔记Ⅲ
- php万能查询用预,PHP 与 mysql
- java正则表达式非贪婪_正则表达式中的贪婪与非贪婪匹配模式
- TYPES、DATA、TYPE、LIKE、CONSTANTS、STATICS、TABLES
- 泊松分布的理解与Python仿真
- mysql 5.5 字符集_MySQL 5.5客户端字符集相关参数
- 【无人机组装与调试】第六章 电调、电池、电机
- DPPM(动态电源路径管理)与VINDPM(输入电压动态电源管理)
- WIFI通信-笔记整理
- AI 20年内将会给我们的生活带来什么改变?
- Mybase使用教程-不古出品
- Windows 2003服务器集群安装图解
- 基于STM32和ATH20实现OLED显示温湿度
- Qt网络编程电子白板
- svn上传文件最大多少_SVN 控制上传文件尺寸
- Peacock:大规模主题模型及其在腾讯业务中的应用