⼿机在下载⽂件时乱码问题
现象:在电脑上,使⽤IE,Chrome下载⽂件,⽂件名均正常
在部分⼿机上下载是正常的,但是在部分⼿机上显⽰出现乱码
String user_agent = Header("user-agent");
String fname = "";
// 主要是下⾯这段代码起作⽤
boolean flag = user_agent.indexOf("like Gecko")>0;
if(LowerCase().indexOf("msie")>0||flag){
fname = de(fileName, "UTF-8");
}else{
fname = new Bytes(),"iso8859-1");
}
String downType = ServletContext().getMimeType(fileName);
response.setHeader("Content-type", downType);
response.setHeader("Content-Disposition", "attachment;filename="+fname);
String fileUrl = ServletContext().getRealPath("/")+filePath;
MyLog4j.logger.info("⽂件真实路径:"+fileUrl);
File f = new File(fileUrl);
FileInputStream input = new FileInputStream(f);
OutputStream out = OutputStream();
IOUtils.closeQuietly(input);
input.close();
但是在⼿机上,出现了⼀种显现:下载后⽂件正常,但是在下载界⾯让⽤户确定下载时,显⽰的⽂件名为%....的形式,没有显⽰中⽂名称。如果是"iso8859-1"⽅式的时候,在确定界⾯显⽰的就是中⽂名称。
chrome直接下载

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。