java 文件下载支持中文名称的实例
作者:无知死循环 时间:2023-03-16 09:02:16
实例如下所示:
/**
* 文件下载
* @param filePath 文件路径
* @param fileName 文件名称
*/
public void download(String filePath,String fileName){
try {
//支持中文
fileName = URLEncoder.encode(fileName,"UTF-8");
HttpServletResponse response = ServletActionContext.getResponse();
HttpServletRequest request = ServletActionContext.getRequest();
response.reset();
response.setContentType(request.getServletContext().getMimeType(fileName));
response.setHeader("Content-Disposition", "attachment;filename="+fileName);
InputStream in = new FileInputStream(filePath);
OutputStream out = response.getOutputStream();
byte[] b = new byte[1024];
int length = 0;
while((length = in.read(b)) != -1) {
out.write(b,0,length);
}
in.close();
out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
来源:https://www.cnblogs.com/ljl-blog/p/5718494.html
标签:java,文件下载,支持,中文名称
0
投稿
猜你喜欢
mybatis之如何获取表中某一列的最大值
2022-03-26 08:38:53
mybatis-plus用insertBatchSomeColumn方法批量新增指定字段
2022-03-02 10:20:58
Java实现飞机航班管理系统的思路详解
2022-08-20 19:48:42
Mybatis实现自定义类型转换器TypeHandler的方法
2023-09-28 14:52:22
浅析Java设计模式编程中的单例模式和简单工厂模式
2021-10-13 15:27:54
Java虚拟机JVM性能优化(三):垃圾收集详解
2021-10-16 10:38:49
android仿音悦台页面交互效果实例代码
2023-03-27 12:55:54
Java中类的加载顺序执行结果
2022-03-12 18:12:35
Spring多个数据源配置详解
2023-09-20 18:22:18
SpringBoot访问外部文件及默认路由问题
2021-08-12 10:58:01
深入了解ViewPager2的使用
2021-07-06 17:26:26
简述Java List去重五种方法
2022-02-28 03:17:13
SpringBoot项目速度提升之延迟初始化(Lazy Initialization)详解
2021-11-27 06:37:22
Java开发人员最常犯的10个错误
2021-10-25 16:40:08
C#枚举类型与位域枚举Enum
2023-03-02 06:52:27
java中transient关键字用法分析
2022-01-22 04:27:05
Android三种菜单实例分析
2023-09-09 05:17:20
详解 Corba开发之Java实现Service与Client
2023-09-23 03:42:48
SpringBoot如何实现Tomcat自动配置
2022-04-28 02:44:10
深入了解C#多线程安全
2023-08-08 19:43:32