很多情况下,我们在写程序的时候都会把代码设置为UTF-8的编码,可以在下载文件设置filename的时候却有违常理,竟然设置编码格式为ISO8859-1,代码如下(如是英文的话就不需要这样处理了):
response.setHeader("Content-disposition", "attachment; filename=" + new String("中文文件名".getBytes("utf-8"), "ISO8859-1"));
提取出来最核心的一点,filename=new String("中文文件名".getBytes("utf-8"), "ISO8859-1");
先说为什么使用 ISO8859-1 编码,这个主要是由于http协议,http header头要求其内容必须为iso8859-1编码,所以我们最终要把其编码为 ISO8859-1 编码的字符串;
但是前面为什么不直接使用 "中文文件名".getBytes("ISO8859-1"); 这样的代码呢?因为ISO8859-1编码的编码表中,根本就没有包含汉字字符,当然也就无法通过"中文文件名".getBytes("ISO8859-1");来得到正确的“中文文件名”在ISO8859-1中的编码值了,所以再通过new String()来还原就无从谈起了。 所以先通过 "中文文件名".getBytes("utf-8") 获取其 byte[] 字节,让其按照字节来编码,即在使用 new String("中文文件名".getBytes("utf-8"), "ISO8859-1") 将其重新组成一个字符串,传送给浏览器。
参考:http://jiapumin.iteye.com/blog/1006144
相关推荐
文件下载response.setHeader()下载中文文件名乱码问题解决办法.pdf
ISO-10303-21文件,对step文件进行了详细的规范,2002版。
使用大家说的以下配置,验证无效,跨域问题仍然存在 add_header 'Access-Control-Allow-Origin' '*'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Methods' 'GET,...
X-Forwarded-For Header插件,此扩展允许您快速设置X-Forwarded-For HTTP标头
资源来自pypi官网。 资源全名:blm_header-1.1.1-py3-none-any.whl
bootstrap-table-fixed-header.js bootstrap-table-fixed-header.css 用于实现bootstrap冻结表头
DISK 1 ------ INSTALL EXE - Install program UNZIP EXE - Decompress .ZIP files README COM - Reads this README CLASSINC ZIP - ABSTARRY H - Header file for classlibs ARRAY H - Header file for ...
实验报告 "实验课名称:数据结构实验 " "实验名称:文件... " "//头部一要定设置至少512个,因为结点最多可达256,所有结点数最多可达51" "1 " "三、算法设计 " "输入要压缩的文件读文件并计算字符频率根据字符的频率,
关于step标准ISO-10303-21; HEADER; /* Generated by software containing ST-Developer * from STEP Tools, Inc. (www.steptools.com) */ /* OPTION: using custom schema-name function */ FILE_DESCRIPTION( ...
1路PC817光耦隔离继电器模块PDF原理图+AD集成封装库文件 集成封装库列表: Library Component Count : 9 Name Description ------------------------------------------------------------------------------------...
大家都知道,nginx配置文件通过使用add_header指令来设置response header。 昨天无聊用curl查看一个站点的信息,发现返回的头部与想象中的不一样: HTTP/2 200 date: Thu, 07 Feb 2019 04:26:38 GMT content-type: ...
XS128 +MMA7361设计Altium设计硬件原理图+PCB文件,2层板设计,Altium Designer 设计的工程文件,包括完整的原理图及PCB文件,可以用Altium(AD)软件打开或修改,可作为你产品设计的参考。 器件列表: Library ...
此扩展允许您快速更新各种 X-Forwarded-For、X-... 打开Chrome浏览器的扩展程序: 地址栏直接输入:chrome://extensions/ 把下载到的文件解压后,点击加载已解压的扩展程序,选择解压后的文件夹(0.6.2_0),安装完毕。
@page WordSection1 { /* size: 841.9pt 595.3pt; */ size: 1190.55pt 841.89pt; mso-page-orientation: landscape; margin: 90.0pt 81.0pt 90.0pt 81.0pt; mso-title-page:yes; mso-...
httpclient的用法,发送get请求和post请求,设置header
HCPL-2630+TLP291-4+TLP2345 16路MOS管驱动板PDF原理图+AD集成封装库文件: 集成封装库: Library Component Count : 12 Name Description ---------------------------------------------------------------------...
NULL 博文链接:https://iamliming.iteye.com/blog/1399257
1.27mmSMDheader1.SLDPRT 1.27mmSMDheader2.SLDPRT 2.54MMHEADER-2X7.SLDASM 2.54MMHEADER-2X8.SLDASM 2.54mmheader-long.SLDPRT 2.54mmheader.SLDPRT 2.54mmheader双弯1.SLDPRT 2.54mmheader弯.SLDPRT 2.54...
主要介绍了php中header设置常见文件类型的content-type的相关资料,需要的朋友可以参考下
script type =" text/javascript " src =" bower_components/angular-fixed-table-header/src/fixed-table-header.min.js " > </ script > 在应用程序中包含fixed.table.header模块作为依赖项。 angular...