日期:2014-05-18  浏览次数:20857 次

火狐浏览器下载时名称为乱码,怎么解决?
我做的下载,用IE默认下载和迅雷下载都很正常,就是用火狐浏览器下载时,文件名称的中文字为乱码,怎么解决这种情况,请高手帮忙指点一下,谢谢!!

------解决方案--------------------
自己写的servlet还是怎么。如果是自己写的servlet下载的话加上这个试试看
response.setHeader("Content-Disposition", "attachment; filename=\""+URLEncoder.encode("//文件名", "utf-8//編碼方式")+"\"");
------解决方案--------------------

//火狐
if (request.getHeader("User-Agent").toLowerCase().indexOf("firefox") > 0) {
fileNameTemp = new String(fileNameTemp.getBytes("UTF-8"), "ISO8859-1");
}
//IE
else if (request.getHeader("User-Agent").toUpperCase().indexOf("MSIE") > 0){
fileNameTemp = URLEncoder.encode(fileNameTemp, "UTF-8");
}

response.setHeader("Content-Disposition", "attachment;filename=\""+fileNameTemp+"\"");