文件下载文件名乱码

public static String getDownloadFileName(HttpServletRequest request,
            String fileName) {
        String agent = request.getHeader("User-Agent").toUpperCase();
        try {
            if (agent.indexOf("MSIE") > 0 || agent.indexOf("TRIDENT") > 0 || agent.indexOf("EDGE") > 0) {
                fileName = URLEncoder.encode(fileName, "UTF-8");
                fileName = fileName.replaceAll("\\+", "%20");
            } else {
                fileName = new String(fileName.getBytes("UTF-8"), "ISO8859-1");
            }
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return fileName;
    }
时间: 2024-11-02 00:28:40

文件下载文件名乱码的相关文章

Java文件下载文件名乱码

文件下载文件名乱码主要是没有对文件名进行编码,这里适用的浏览器主要包括(IE,火狐,谷歌,360) 代码如下 //火狐浏览器 if(ServletActionContext.getRequest().getHeader("USER-AGENT").toLowerCase().indexOf("firefox") >0){ return new String(文件名.getBytes(), Const.CHARSET_ISO8859_1); } //其他浏览器

文件下载文件名乱码解决

if(request.getHeader("User-Agent").toUpperCase().indexOf("MSIE") > 0){ response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode(product.getRealName1(), "UTF-8")); }else{ res

关于java文件下载文件名乱码问题解决方案

关于java文件下载文件名乱码问题解决方案 做为一名程序员,大家应该都遇到过乱码的问题吧!这篇文章是自己解决关于关于java文件下载文件名乱码问题的处理: String fileName = "下载的文件名"; String userAgent = request.getHeader("User-Agent"); //针对IE或者以IE为内核的浏览器: if (userAgent.contains("MSIE")||userAgent.conta

Struts2 .apk 文件下载及解决中文文件名乱码问题(转)

1.Tomcat服务器不能下载 .apk类型文件 Android的APK安装包不能下载或下载文件是以 .zip为后缀名而不是 .apk为文件后缀名时,需在 Tomcat 的 web.xml 配置文件中加入以下 MIME 类型: 1 <mime-mapping> 2 <extension>apk</extension> 3 <mime-type>application/vnd.android.package-archive</mime-type>

文件下载(解决下载文件文件名乱码)

不同浏览器下载文件时会出现文件名乱码问题,根据请求浏览器类型处理文件名.

asp.net 文件下载 解决文件名乱码

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO; using ElementLibrary.BLL; using ElementLibrary.MODEL; using System.Text; /* * LiuH * Descr:下载处理DownLoadFile.ashx * Addtime:2014/8/26 * LastModifyTim

java文件下载的文件名乱码

// //下载文件,并处理文件名乱码 public void downloadFile(HttpServletRequest request,HttpServletResponse response){    String path = request.getSession().getServletContext().getRealPath("/upload/文档1.doc");     // path是根据日志路径和文件名拼接出来的      File file = new File

010a3 文件下载中文乱码

文件下载中文乱码: 中文名称的文件名下载的时候名称会出现问题 常见的浏览器需要提供文件名称的utf-8编码 对于火狐来说需要提供文件名称的base64编码 方案1:使用工具类 方案2:网上的方式(8成好使) new String(filename.getByte("gbk"),"iso8859-1"); 1 new String(filename.getByte("gbk"),"iso8859-1"); 来自为知笔记(Wiz)

swfupload组件后台获取中文文件名乱码的问题解决

   问题描述:用swfupload上传文件,含有中文名称的文件上传会报错,我用的是获取FileItem对象,用FileItem对象的getName()方法获取文件名称会乱码,试着用request.setCharacterEncoding("UTF-8")及fileName= new String(fileName.getBytes("iso-8859-1";),"UTF-8"); 都不可以,用FileItem对象.getString("