文章目录

  • 1、OSS 下载文件,文件名乱码(文件名是中文)
  • 2、下载乱码的代码如下:
  • 3、修正后的代码如下:

1、OSS 下载文件,文件名乱码(文件名是中文)

oss 版本 3.8.1

<dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.8.1</version>
</dependency>

如下图所示,可以看到文件名是乱码:

2、下载乱码的代码如下:

ObjectMetadata objectMetadata = new ObjectMetadata();
objectMetadata.setContentLength(inputStream.available());
objectMetadata.setCacheControl("no-cache");
objectMetadata.setHeader("Pragma", "no-cache");
objectMetadata.setContentType(ContentTypeEnum
.getContentTypeByFileType(fileName.substring(fileName.lastIndexOf("."))));
//这句话是重点,是设置文件的下载行为(inline 表示是内联表示,就是在新的窗口打开文件,默认的图片、pdf 都会在新窗口打开,excel、doc 文档会下载.attachment表示下载文件)
objectMetadata.setContentDisposition("inline;filename=" + fileName);
oss.putObject(eyangxiOssClientPropertiesConfig.getBucket(), fileName, inputStream, objectMetadata);

3、修正后的代码如下:

fileName = URLEncoder.encode(fileName , "UTF-8");
objectMetadata.setContentDisposition("inline;filename*=utf-8'zh_cn'" + fileName );
objectMetadata.setHeader("Content-disposition", "filename*=utf-8'zh_cn'" + fileName );

改了代码后下载文件名

OSS 下载文件名乱码相关推荐

  1. php ie 下载 乱码,php ie下载文件名乱码怎么办

    php ie下载文件名乱码的解决办法:1.通过header方法解决乱码:2.通过"function remote_filesize($uri,$user='',$pw='') {...}&q ...

  2. java文件名的编码格式_java下载文件名乱码解决方法详解

    java下载文件名乱码的方法:(推荐:java视频教程) 每个浏览器的编码不一样,火狐采用的是base64.ie和谷歌采用的是url编码: 所以我们在设置响应头的时候Content-Type getS ...

  3. java下载文件名乱码的解决方法

    java下载文件名乱码的解决方法 参考文章: (1)java下载文件名乱码的解决方法 (2)https://www.cnblogs.com/liyabin/p/7891073.html 备忘一下.

  4. 火狐浏览器下载文件名乱码

    ##火狐浏览器下载文件名乱码 response.setHeader("Content-Disposition","attachment;filename*=utf-8'z ...

  5. IE浏览器下载文件名乱码

    解决IE浏览器下载文件名乱码额问题 //下载的文件名为fileNameString fileName = "登录登出日志统计" + DateUtils.yyyyMMddHHmmss ...

  6. java web 下载文件名乱码

    Web开发下载文件功能(代码如下),文件名如果带有中文,经常会出现乱码现象,需要进行编码. String fileName = "测试文件.doc"; try {HttpServl ...

  7. 解决wget下载文件名乱码的一些方法

    在下载用apache或者nginx做的索引目录时,遇到文件名乱码问题.搜索了不少资料,尝试了好几种方案,大家可以结合使用. 一般情况下加上–restrict-file-names=nocontrol参 ...

  8. 开发者日记1-文件下载文件名乱码(所有语言通用下载设置)

    源头 作为一个原Java开发者,在之前所开发的项目中,做文件下载我们有一个方法,就是获取User-agent然后去判断这个user-agent的请求头去依次根据浏览器去转换我们返回时的文件名称 文件下 ...

  9. java ie下载文件名乱码问题_php中强制下载文件的代码(解决了IE下中文文件名乱码问题)...

    中间遇到一个问题是提交的中文文件名直接放到header里在IE下会变成乱码,解决方法是将文件名先urlencode一下再放入header,如下. $file_name = urlencode($_RE ...

  10. Java解决下载--文件名乱码

    最近常有人问到下载文件文件名出现乱码问题,今天统一给出解决方案如下 通常都会通过URLEncoder转码的方式来解决,关键代码如下: response.setContentType( "ap ...

最新文章

  1. springboot 自动配置
  2. java 判断是否是日期_java判断是否为日期的方法(附代码)
  3. Android 开发工具类 36_ getSimSerial
  4. 数学问题->分数的四则运算
  5. 鲍姆-韦尔奇算法 数学推导
  6. DNS域名解析服务(正向解析,反向解析,主从解析)
  7. 加强Eclipse代码自动提示的方法
  8. structs2之多文件上传
  9. mysql数据库表分区_MySQL数据库之MySQL的分区和分表详解
  10. 饿了么UI组件库中,Upload组件上传闪动的解决
  11. Linux实现ppp拨号4G模块联网全球APN之亚美尼亚(Armenian)
  12. anaconda 的安装及环境配置、anaconda创建新的环境、jupyter代码高亮及自动补全、改变jupyter注释的字体及颜色
  13. 彻底解密C++宽字符
  14. 虚拟机和本机拷贝数据:
  15. 【论文总结】Towards Open World Object Detection(附翻译)
  16. 3D 沙盒游戏之地面网格设计
  17. 双目立体匹配步骤详解
  18. 扫描版PDF自动添加书签 | 电子书目录自动获取
  19. linux脚本从100减到1,shell实例100例《十一》
  20. 英语启蒙之绘本篇:适合1-3岁孩子学英语的绘本推荐清单

热门文章

  1. 统计学三大相关系数之皮尔森(pearson)相关系数
  2. 电脑数据传输哪款软件好用?
  3. python 四象限图_如何制作四象限气泡图表
  4. 计算机算法设计与分析 第4版 (王晓东) 重点题
  5. 电机选型计算电机转动惯量、启动转矩和额定转速
  6. 几种路由器、WIFI网络中无线中继、无线桥接WDS的信号扩展、增强
  7. js获取当前url路径
  8. ssm大型分布式商城项目实战视频教程下载java分布式开发教程
  9. 企业信息化认知的四个误区
  10. 城市规划图例符号_城市规划图例符号精编版