Struts2文件下载中文名乱码
Struts2中提供了快捷的下载方式,通过配置struts.xml文件即可实现文件的下载,但是功能实现后下载文件的文件名却出现乱码,或者直接来个***.action,让人很是无语,但很显然,这是中文乱码问题需要设置编码格式,道理都懂,但是怎样实现呢?其实很简单,上代码:
<result name="download" type="stream"> <param name="contentType">application/octet-stream</param> <param name="inputName">inputStreamxxx</param> <param name="contentDisposition">attachment;<span style="color:#ff0000;">filename=${@java.net.URLEncoder@encode(oldFileName,"UTF-8")</span>}</param> <param name="bufferSize">1024</param> </result>
最重要的就是设置文件名的编码格式为“utf-8”,然后重启Tomcat,此时,下载文件的名称应该是正确的了。