zoukankan      html  css  js  c++  java
  • 下载文件乱码处理

    import org.apache.commons.lang3.StringUtils;
    
    import java.io.UnsupportedEncodingException;
    import java.net.URLEncoder;
    import java.nio.charset.Charset;
    import java.nio.charset.StandardCharsets;
    
    /**
     * @Author wd
     * @create 2019/11/29
     * Description: <br/>
     */
    public class DownloadUtil {
    
    
        /**
         * 根据浏览器返回不同编码 (解决IE乱码问题)
         *
         * @param name      文件名称
         * @param userAgent 浏览器标识
         * @param charset   编码方式
         * @return
         * @throws UnsupportedEncodingException
         */
        public static String fileNameGarbled(String name, String userAgent, Charset charset) throws UnsupportedEncodingException {
            if (StringUtils.contains(userAgent, "MSIE") || StringUtils.contains(userAgent, "Trident") || StringUtils.contains(userAgent, "Edge")) {
                //IE  Edge 浏览器
                name = URLEncoder.encode(name, "UTF8");
            } else {
                //火狐,google等其他浏览器
                // 下载显示的文件名,解决中文名称乱码问题
                name = new String(name.getBytes(StandardCharsets.UTF_8), charset);
            }
            return name;
        }
    
    }
    
    
    

    charset值为StandardCharsets.ISO_8859_1

  • 相关阅读:
    11-15SQLserver基础--数据库之范式理论
    11-13SQLserver基础--数据库之事务
    11-11SQLserver基础--数据库之触发器
    C#中abstract和virtual区别
    virtual修饰符
    override 修饰符
    访问public
    访问修饰符protected
    访问修饰符private
    访问修饰符internal
  • 原文地址:https://www.cnblogs.com/miye/p/11958683.html
Copyright © 2011-2022 走看看