`
zizhu8
  • 浏览: 62406 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

解决各大浏览器下载文件名显示不正确的情况

阅读更多

下载时,最关键的三步:

response.reset();//清空缓存区,防止存在某些字符使得下载的文件格式错误
response.setContentType("application/pdf;charset=UTF-8");//指定文件类型,其他类型可参见w3school的文档,也可参见下文的附录标准
response.setHeader("Content-Disposition", "attachment;filename=temp.pdf");// attachment后面一定是逗号,这个地方我就犯过错误,写成了:,结果死活不对


解决下载时,中文文件名显示不正确的方法:

理论依据:

浏览器能正确识别的编码格式,只要按照这样的编码来设置对应的Content-Disposition,那么应该就不会出现中文文件名的乱码问题了。
首先,Content-Disposition值可以有以下几种编码格式
1. 直接urlencode:
Content-Disposition: attachment; filename="struts2.0%E4%B8%AD%E6%96%87%E6%95%99%E7%A8%8B.chm"
2. Base64编码:
Content-Disposition: attachment; filename="=?UTF8?B?c3RydXRzMi4w5Lit5paH5pWZ56iLLmNobQ==?="
3. RFC2231规定的标准:
Content-Disposition: attachment; filename*=UTF-8''%E5%9B%9E%E6%89%A7.msg
4. 直接ISO编码的文件名:
Content-Disposition: attachment;filename="测试.txt"
然后,各浏览器支持的对应编码格式为:
1. IE浏览器,采用URLEncoder编码
2. Opera浏览器,采用filename*方式
3. Safari浏览器,采用ISO编码的中文输出
4. Chrome浏览器,采用Base64编码或ISO编码的中文输出
5. FireFox浏览器,采用Base64或filename*或ISO编码的中文输出

源代码:


基本能解决大部分浏览器中文显示不正常的情况,但是,浏览器还有版本的,所以最好的方式就是能不用中文的时候,尽量别用中文


附录:

按照文件扩展名排列的 Mime 类型列表

扩展名 类型/子类型
application/octet-stream
323 text/h323
acx application/internet-property-stream
ai application/postscript
aif audio/x-aiff
aifc audio/x-aiff
aiff audio/x-aiff
asf video/x-ms-asf
asr video/x-ms-asf
asx video/x-ms-asf
au audio/basic
avi video/x-msvideo
axs application/olescript
bas text/plain
bcpio application/x-bcpio
bin application/octet-stream
bmp image/bmp
c text/plain
cat application/vnd.ms-pkiseccat
cdf application/x-cdf
cer application/x-x509-ca-cert
class application/octet-stream
clp application/x-msclip
cmx image/x-cmx
cod image/cis-cod
cpio application/x-cpio
crd application/x-mscardfile
crl application/pkix-crl
crt application/x-x509-ca-cert
csh application/x-csh
css text/css
dcr application/x-director
der application/x-x509-ca-cert
dir application/x-director
dll application/x-msdownload
dms application/octet-stream
doc application/msword
dot application/msword
dvi application/x-dvi
dxr application/x-director
eps application/postscript
etx text/x-setext
evy application/envoy
exe application/octet-stream
fif application/fractals
flr x-world/x-vrml
gif image/gif
gtar application/x-gtar
gz application/x-gzip
h text/plain
hdf application/x-hdf
hlp application/winhlp
hqx application/mac-binhex40
hta application/hta
htc text/x-component
htm text/html
html text/html
htt text/webviewhtml
ico image/x-icon
ief image/ief
iii application/x-iphone
ins application/x-internet-signup
isp application/x-internet-signup
jfif image/pipeg
jpe image/jpeg
jpeg image/jpeg
jpg image/jpeg
js application/x-javascript
latex application/x-latex
lha application/octet-stream
lsf video/x-la-asf
lsx video/x-la-asf
lzh application/octet-stream
m13 application/x-msmediaview
m14 application/x-msmediaview
m3u audio/x-mpegurl
man application/x-troff-man
mdb application/x-msaccess
me application/x-troff-me
mht message/rfc822
mhtml message/rfc822
mid audio/mid
mny application/x-msmoney
mov video/quicktime
movie video/x-sgi-movie
mp2 video/mpeg
mp3 audio/mpeg
mpa video/mpeg
mpe video/mpeg
mpeg video/mpeg
mpg video/mpeg
mpp application/vnd.ms-project
mpv2 video/mpeg
ms application/x-troff-ms
mvb application/x-msmediaview
nws message/rfc822
oda application/oda
p10 application/pkcs10
p12 application/x-pkcs12
p7b application/x-pkcs7-certificates
p7c application/x-pkcs7-mime
p7m application/x-pkcs7-mime
p7r application/x-pkcs7-certreqresp
p7s application/x-pkcs7-signature
pbm image/x-portable-bitmap
pdf application/pdf
pfx application/x-pkcs12
pgm image/x-portable-graymap
pko application/ynd.ms-pkipko
pma application/x-perfmon
pmc application/x-perfmon
pml application/x-perfmon
pmr application/x-perfmon
pmw application/x-perfmon
pnm image/x-portable-anymap
pot, application/vnd.ms-powerpoint
ppm image/x-portable-pixmap
pps application/vnd.ms-powerpoint
ppt application/vnd.ms-powerpoint
prf application/pics-rules
ps application/postscript
pub application/x-mspublisher
qt video/quicktime
ra audio/x-pn-realaudio
ram audio/x-pn-realaudio
ras image/x-cmu-raster
rgb image/x-rgb
rmi audio/mid
roff application/x-troff
rtf application/rtf
rtx text/richtext
scd application/x-msschedule
sct text/scriptlet
setpay application/set-payment-initiation
setreg application/set-registration-initiation
sh application/x-sh
shar application/x-shar
sit application/x-stuffit
snd audio/basic
spc application/x-pkcs7-certificates
spl application/futuresplash
src application/x-wais-source
sst application/vnd.ms-pkicertstore
stl application/vnd.ms-pkistl
stm text/html
svg image/svg+xml
sv4cpio application/x-sv4cpio
sv4crc application/x-sv4crc
swf application/x-shockwave-flash
t application/x-troff
tar application/x-tar
tcl application/x-tcl
tex application/x-tex
texi application/x-texinfo
texinfo application/x-texinfo
tgz application/x-compressed
tif image/tiff
tiff image/tiff
tr application/x-troff
trm application/x-msterminal
tsv text/tab-separated-values
txt text/plain
uls text/iuls
ustar application/x-ustar
vcf text/x-vcard
vrml x-world/x-vrml
wav audio/x-wav
wcm application/vnd.ms-works
wdb application/vnd.ms-works
wks application/vnd.ms-works
wmf application/x-msmetafile
wps application/vnd.ms-works
wri application/x-mswrite
wrl x-world/x-vrml
wrz x-world/x-vrml
xaf x-world/x-vrml
xbm image/x-xbitmap
xla application/vnd.ms-excel
xlc application/vnd.ms-excel
xlm application/vnd.ms-excel
xls application/vnd.ms-excel
xlt application/vnd.ms-excel
xlw application/vnd.ms-excel
xof x-world/x-vrml
xpm image/x-xpixmap
xwd image/x-xwindowdump
z application/x-compress
zip application/zip


分享到:
评论

相关推荐

    傲游浏览器v3.3.6.2000 [2012-3-22]

    * 某些情况下载后文件名异常 [资源嗅探] * youtube 某些视频无法嗅探 [傲游截图] * 某些对话框窗口截图截不全 [广告过滤] * 某些情况下编辑过滤规则时 Backspace 键无效 * 小号窗口元素过滤失效 [插件平台] ...

    世界之窗 3.5.0.3

    7、修复了某些情况下,批量下载文件可能导致文件名解析不正确的问题; 8、修复了查看历史记录菜单在窗口最大最小化时不消失的问题; 9、修复了无法切换网站兼容模式的问题; 10、修复了下载工具中“使用迅雷5”...

    DotNetTextBox V6.0.10 商业版 下载 (已知最新)

    3)增加了在IE8浏览器下控件显示不正确的解决办法(更新到faq.htm页面)! 2009/03/23 Version 6.0.2 For VS2005/2008 Updates: 1)修正多文件上传的严重BUG! 2)优化了多文件上传的性能! 3)优化了多文件上传...

    帝国下载系统 v2.5 开源正式版 bulid 090613.rar

    《帝国下载系统》是为网站资料下载与在线影视网站提供的解决方案。功能强大,简单易用,全静态页面,完善的会员收费方案,全面满足免费与收费下载或影视网站需求。 帝国下载系统2.5开源版升级功能列表: 1、对系统...

    帝国下载系统 v2.5 开源正式版 bulid 090613

    《帝国下载系统》是为网站资料下载与在线影视网站提供的解决方案。功能强大,简单易用,全静态页面,完善的会员收费方案,全面满足免费与收费下载或影视网站需求。 帝国下载系统2.5开源版升级功能列表: 1、对系统...

    帝国下载系统 v2.5 开源正式版 bulid 090416.rar

    《帝国下载系统》是为网站资料下载与在线影视网站提供的解决方案。功能强大,简单易用,全静态页面,完善的会员收费方案,全面满足免费与收费下载或影视网站需求。 帝国下载系统2.5开源版升级功能列表: 1、对系统...

    手机 pdf 阅读器

    修正了阅读历史图标显示不正确的BUG 修正了阅读HTML文件时,不显示空格的BUG 修正HTML阅读时解析不正确的BUG 提升HTML解析时的速度及降低了内存的消耗 阅读TXT时,偶尔出现“java.lang.RuntimeException: ...

    KODExplorer 芒果云-资源管理器

    - 文件下载,支持大文件下载、断点续传。 - 解决更改排序方式后 ——对应右键菜单不同步问题。 - 优化右键更改列表状态,同步保存配置到服务端。 - 文件浏览器打开(a点击新窗口跳转,a不支持click,用子元素冒泡来...

    商用版本文本编辑器DotNetTextBoxV6.0.8Source 源码

    3)增加了在IE8浏览器下控件显示不正确的解决办法(更新到faq.htm页面)! 2009/03/23 Version 6.0.2 For VS2005/2008 Updates: 1)修正多文件上传的严重BUG! 2)优化了多文件上传的性能! 3)优化了多文件上传时的一些...

    DotNetTextBox所见即所得编辑器控件 v3.3.1

    6) 修正Opera浏览器下转换预览状态后出现内容显示不正确的BUG。 <br>2007/7/29 Version 3.2.5 Free <br>Updates: 1) 修正有些内容不能在编辑框内正常粘贴(粘贴了在编辑器外)的BUG。 2) 修改插入...

    精易模块[源码] V5.15

    6、新增“类_任务栏”可以显示隐藏任何第三方窗口图标,相当于易中的(不在任务栏显示),带【实例】演示。 7、新增“类_线程池1”中的“等待”方法。 8、修复“编码_Utf8到Ansi“分配内存失败BUG,感谢易友【仁鹰】...

    LFMessS 岭峰网行业专用留言系统 v2.20.0.F.zip

    5、改进PC端、移动端留言发布功能,优化并解决即时通讯软件号码选项开启后,前台显示和实际录入的界面显示软件名不一致的问题; (重要程度:中) 6、改进PC端后台安全中心功能,现在点击“开始检测”按钮会提示...

    JS固定表头和左边列V2.0(源码)

    临时解决方案:在第3个参数(config)中指定 isBootstrap:true,或者也可以不指定,js会自动检测页面上有没有启用文件名为bootstrp的css(如果启用bootstrap.css,但文件名不是bootstrap,那请指定isBootstrap参数)。...

    Activiti的安装详细过程

    了很大的优化,基本上按教程就能顺利 demo , 真正达到了 GA 的效果了。为此我将在使用 mysql 的安装过程及遇到的一些小问 题总结记录了下来。但是我们项目采用 H2 数据库 ( Generic H2 Server )方式存储数据...

    计算机应用技术(实用手册)

    我们可以在这里选择我们的软驱类型,当然了绝大部分情况中我们不必修改这个设置。 右下方还有系统内存的参数:BASE MEMORY:基本内存;extended 扩展内存;other 其它内存;total MEMORY 全部内存。 2.BIOS能功设定...

    店盟淘宝客程序V12.1.rar

    2.加密后当商品详细内容量大时会造成部分浏览器卡(*不加密:可减轻服务器及客户浏览器的负担,加快商品详细页的访问速度 加密:对搜索引擎隐藏淘宝图片连接) 3.调整了推广链接的跳转方式,以便官方获取跳转来路,避免...

    vc++ 开发实例源码包

    3:可以在不下载ZIP.RAR.ISO文件的情况下查看文件里面的目录文件. 4:支持多语言. 5:操作综合其它软件. 6:自定义快捷键. 7:在IE工具栏上加按钮,可以直接拖动连接到按钮上下载. 8:注册采用激活方式. 9:采用Messenger的...

    xheditor-1.1.14

    参数:字符串的URL地址,用以解决前后台不在同一路径的资源定位问题 备注:1.1.0新添加 urlType:本地URL地址强制转换方式选择 参数:abs(绝对路径),root(根路径),rel(相对路径) 备注:1.0.0 beta2新添加,v1.1.0版中...

    300个注册表优化修改文件

    4.不完全注册表恢复,XP和2000重起机器按F8进入,选择上1次正确配置F Office的亲密接触: 点击浏览该文件 改变Word文档日期的显示格式.reg 将Word插入对象的名称汉化.reg 设置Office的安装位置.reg 设置Word中的...

    入门学习Linux常用必会60个命令实例详解doc/txt

    文件为doc版,可自行转成txt,在手机上看挺好的。 本资源来自网络,如有纰漏还请告知,如觉得还不错...last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户。通过last命令查看该程序的log,管理员...

Global site tag (gtag.js) - Google Analytics