package com.lhh.downloadTool; import sun.misc.BASE64Encoder; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; /** * @Auther:luhh * @Date:2021/7/30 0030-17:37 * @Description:com.lhh.downloadUtile * @Version:1.0 */ public class DownloadTool { public static String getFileName(String agent, String filename) throws UnsupportedEncodingException { if (agent.contains("MSIE")) { // IE filename = URLEncoder.encode(filename, "utf-8"); filename = filename.replace("+", " "); } else if (agent.contains("Firefox")) { // Firefox BASE64Encoder base64Encoder = new BASE64Encoder(); filename = "=?utf-8?B?" + base64Encoder.encode(filename.getBytes("utf-8")) + "?="; } else { // 其它浏览器 filename = URLEncoder.encode(filename, "utf-8"); } return filename; } }
关于浏览器下载文件时中文乱码
最新推荐文章于 2023-12-05 09:49:48 发布
本文介绍了一个名为DownloadTool的工具类,用于根据不同浏览器(如IE、Firefox)动态处理文件名,确保在下载过程中正确编码,以适应不同浏览器的行为。重点在于如何通过BASE64编码处理Firefox浏览器的请求。
摘要由CSDN通过智能技术生成