struts2文件下载 火狐浏览器的文件名乱码问题
这是一个文件下载的action,红色部分为火狐浏览器需要特地做的事情。
@Controller
@Scope(value = "prototype")
public class FormManage_downloadAction { private String fileName;//下载文件时候的名称
private String filePath;//文件在磁盘的路径 public String execute() throws UnsupportedEncodingException {
System.out.println("下载action");
System.out.println("fileName="+fileName);
System.out.println("filePath="+filePath); HttpServletRequest request = ServletActionContext.getRequest();
String Agent = request.getHeader("User-Agent");
if (null != Agent) {
Agent = Agent.toLowerCase();
if (Agent.contains("firefox")) {
System.out.println("火狐浏览器");
fileName = new String(fileName.getBytes(), "iso8859-1");
} else {
System.out.println("非火狐浏览器");
fileName = URLEncoder.encode(fileName, "utf8");
}
}
return "success";
} public InputStream getInputStream() throws FileNotFoundException {
return new FileInputStream(filePath);
} public String getFileName() {
return fileName;
} public String getFilePath() {
return filePath;
} public void setFileName(String fileName) {
this.fileName = fileName;
} public void setFilePath(String filePath) {
this.filePath = filePath;
}
}
struts2文件下载 火狐浏览器的文件名乱码问题的更多相关文章
- Excel导出不同浏览器下文件名乱码问题
解决思路:通过请求头中的User-Agent参数中的信息来区分不同浏览器 public Object exportPz(HttpServletRequest request, HttpServletR ...
- FireFox浏览器导出文件名乱码
解决方案1 String codedFileName = "导出文件名.xls"; String agent = request.getHeader("USER-AGEN ...
- C#中解决Response.AddHeader("Content-Disposition", "attachment; filename=" + filename)下载文件时文件名乱码的问题
问题:下载文件时文件名乱码怎么解决? 在C#写后台代码过程中,经常遇到下载文件出现文件名乱码的问题,在网上找了很多方法,总是存在浏览器不兼容的问题,当IE浏览器不乱码时,火狐浏览器就会乱码,后来经过反 ...
- java文件下载和导出文件名乱码浏览器兼容性问题
实例: String poorName= dataMap.get("NAME").toString(); String villageName = dataMap.get(&quo ...
- 火狐浏览器导出EXCEL 表格,文件名乱码问题
牢骚:今天又是一个不太平的日子,打开任务表一看里面有一堆bug,其中有一个就是今天要说的这个关于商品导出的问题,本功能是临时授命接一个任务,本来呢这个导出功能在系统各大模块已经都很成熟了,但是总有一个 ...
- 火狐浏览器下载文件中文乱码,文件名中的空格变加号("+")的问题
解决一下问题: 1.火狐浏览器下载文件,中文变乱码 2.IE浏览器下载文件,丢失文件扩展名或强制扩展名为".txt" 3.浏览器下载文件,文件名中的空格变成加号("+&q ...
- response 下载文件火狐浏览器文件名乱码问题
string path = Server.MapPath(Url.Content("~/") + "UploadFiles/Template/"); ...
- web项目中使用火狐浏览器导出文件时文件名乱码
原因 主要是编码的问题.在设置文件名称前,加上判断.判断下载者使用的浏览器,如果不是火狐浏览器,则对文件名称进行UTF8编码;如果是火狐浏览器,则不对文件名称进行操作. 解决办法 文件名称编码时进行判 ...
- 关于java文件下载文件名乱码问题解决方案
JAVA文件下载时乱码有两种情况: 1,下载时中文文件名乱码 2,下载时因为路径中包含中文文件名乱码,提示找不到文件 解决方法见下面部分代码 response.setContentType(" ...
随机推荐
- iOS开发——Touch ID 指纹识别
项目中为了安全性,一般使用密码或iPhone手机的指纹识别Touch ID. 第一步,判断系统是否支持,iOS8.0及以上才支持. 第二步,判断手机是否支持,带Touch ID的手机iPhone5s及 ...
- css 等高补偿法
html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta ...
- Windows7下安装搭建play框架
作者:Sungeek 出处:http://www.cnblogs.com/Sungeek/ 欢迎转载,也请保留这段声明.谢谢! 1.首先官网下载play的解压包 https://playframewo ...
- [设计模式]Netd中的命令设计模式
命令模式 有如下的角色: (1)调用者(invoker) (2)命令接收者(receiver) (3)客户端(client) (4)命令对象(command) public interface Com ...
- Ubuntu 截屏
一个图说明: 系统设置->键盘->快捷键->屏幕截图 里面可以查看及修改快捷键
- Linux rar
http://www.vpsyou.com/2010/06/15/to-extract-rar-centos.html wget http://www.rarsoft.com/rar/rarlinux ...
- 解决 Chrome 浏览器自动调整小于11px字体的问题
不知道说是 Chrome 智能呢?还是说它多此一举?Chrome 浏览器中存在默认会自动将小于11px大小的字体调整为12px.我在写 BlueNight 主题的最新评论时候就设置了评论发布时间为11 ...
- phpcms v9 自定义伪静态的分页函数
因为.这个页面还没做好..等做好了..再给大家演示...... 调用方法:$page_attr=pages_open($num[0]['cun'],$get_page,$max_page,'http: ...
- cxgrid footer summary value by a column
var AIndex: integer; AValue: variant; begin with cxGrid1DBTableView1.DataController.Summary do begin ...
- 大型网站用什么技术比较好,JSP,PHP,ASP.NET
大型网站,我建议要考虑的问题: 首先讨论一下大型网站需要注意和考虑的问题. 数据库海量数据处理:负载量不大的情况下select.delete和update是响应很迅速的,最多加几个索引就可以搞定,但千 ...