`
figure
  • 浏览: 10226 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

不同浏览器下文件下载,文件名编码问题

 
阅读更多

 

/**
	 * deal with the fileName encode in the different browsers
	 * @param request
	 * @param fileName
	 * @return
	 * @throws UnsupportedEncodingException
	 */
	private String encodeFileName(HttpServletRequest request, String fileName)
			throws UnsupportedEncodingException {
		String agent = request.getHeader("USER-AGENT");
		if (null != agent && -1 != agent.indexOf("MSIE")) {
			return URLEncoder.encode(fileName, "UTF8").replace("+","%20");
		} else if (null != agent && -1 != agent.indexOf("Mozilla")) {
			return "=?UTF-8?B?"
					+ (new String(Base64.encodeBase64(fileName
							.getBytes("UTF-8")))) + "?=";
		} else {
			return fileName;
		}
	}

 


 

 

分享到:
评论

相关推荐

    不同浏览器上中文文件名的下载乱码问题

    不同浏览器上中文文件名的下载乱码问题 浏览器IEChromeSafariOpera 浏览器能正确识别的编码格式

    解决浏览器请求响应中文文件名乱码问题的小工具包,解决中文文件名问题

    首先,我们需要理解问题的核心:浏览器在请求服务器上的资源,特别是文件时,如果文件名包含中文字符,可能会因为编码不一致导致乱码。这主要涉及到字符编码的两个关键概念——Unicode和字符编码转换。 1. **...

    java导出文件文件名处理

    在这个过程中,正确处理文件名是非常重要的一步,尤其是考虑到不同浏览器对于文件名编码方式的支持差异。本文将详细介绍如何在Java中处理导出文件时的文件名问题,确保用户能够正常下载带有中文或其他特殊字符的...

    Java实现文件下载并解决中文文件名乱码

    - **Internet Explorer处理**:IE浏览器需要使用`URLEncoder.encode()`方法将文件名编码为URL编码格式。 ```java filename = URLEncoder.encode(filename, "UTF-8"); ``` - **其他浏览器兼容性考虑**:虽然上述...

    解决不同浏览器下载时中文名乱码问题

    这是因为不同的浏览器处理文件名编码的方式有所不同,导致服务器端设置的文件名在客户端显示不正确。本文将详细探讨这一问题,并提供一种适用于多种浏览器的解决方案。 #### 一、问题分析 文件下载时出现中文乱码...

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

    通过上述代码,我们可以解决 Java 文件下载文件名乱码问题,但需要注意的是,在不同的浏览器中,乱码问题的解决方法可能不同。例如,在 IE 浏览器中,需要使用 URLEncoder 对文件名进行编码,而在非 IE 浏览器中,...

    welogic struts2文件下载中文件名乱码:在tomcat中是好的哦

    在IT领域,特别是Web开发中,处理文件下载时遇到文件名乱码问题是一个常见的挑战,尤其是在不同的服务器环境下,如WeLogic与Tomcat之间的差异。本文将深入探讨在WeLogic服务器中使用Struts2框架进行文件下载时遇到的...

    jsp实现文件下载与中文文件名乱码问题解决

    本文将深入解析如何在JSP中实现文件下载,并解决中文文件名乱码的问题。 首先,我们需要了解HTTP协议在处理文件下载时的角色。当用户请求下载一个文件时,服务器需要设置响应头来指示浏览器如何处理这个响应。在JSP...

    ASP.NET 解决下载文件名乱码问题

    解决ASP.NET中文件下载时的文件名乱码问题,关键在于确保服务器端和客户端的编码一致性。通过使用`HttpUtility.UrlEncode`、`Server.UrlEncode`等方法,可以有效地处理各种情况下的文件名乱码。此外,动态修改URL也...

    .net 下载文件.后修改文件名

    在.NET开发中,有时我们...总结来说,.NET下载文件并允许用户修改文件名的过程涉及了文件I/O操作、HTTP响应控制和URL编码等技术。通过设置正确的响应头和处理文件内容,我们可以提供一个安全且用户友好的文件下载体验。

    Java应用下载文件功能,输出文件名中的中文乱码

    在Java应用中实现文件下载功能时,经常遇到的一个问题是输出文件名中的中文字符会出现乱码。这主要是因为HTTP协议在传输文件名时,默认使用的是ISO-8859-1编码,而中文字符在此编码下无法正确解析,从而导致乱码的...

    【JavaScript源代码】Vue通过阿里云oss的url连接直接下载文件并修改文件名的方法.docx

    在本文档中,我们探讨了如何在Vue.js应用中通过阿里云OSS(Object Storage Service)的URL直接下载文件,并在下载过程中修改文件名。在尝试通过HTML的`<a>`标签直接设置`download`属性来实现重命名失败后,作者选择...

    文件下载response.setHeader()下载中文文件名乱码问题解决办法.pdf

    总结来说,通过设置正确的Content-Disposition响应头,并将文件名进行UTF-8编码,可以有效解决Web应用中文件下载时的中文文件名乱码问题。同时,根据文件类型设置正确的Content-Type响应头,以及考虑浏览器的兼容性...

    彻底解决Asp.net 文件下载时文件名的中文乱码和空格异常全球性技术难题

    总的来说,通过合理的文件名编码和对浏览器特性的判断,可以克服Asp.net中文件下载时的中文乱码和空格问题,确保用户在各种浏览器环境下都能获得良好的下载体验。这个解决方案不仅适用于标准的ASCII字符集,也支持...

    【文件下载】及解决文件名中文乱码问题

    本文将深入探讨“文件下载”以及如何解决文件名中文乱码问题,这在处理多语言环境下的数据交流时显得尤为重要。 首先,我们要理解文件下载的基本原理。在Web环境中,文件下载通常涉及HTTP协议的GET请求。服务器接收...

    关于附件上传文件名包含特殊字符的问题解决办法

    另一种更为全面的方法是通过对文件名进行编码和解码来确保文件能够正常上传和下载。虽然这种方法实现起来相对复杂,但它提高了系统的健壮性和用户满意度。开发者可以根据自身项目的实际情况和需求选择合适的解决方案...

    Struts2 下载文件不同浏览器兼容问题.doc

    总的来说,解决Struts2下载文件不同浏览器兼容问题的关键在于理解`Content-Disposition`头的处理方式,并针对不同浏览器采用适当的编码策略。同时,确保Struts2配置中正确设置`contentDisposition`参数,以保证在...

    文件下载,二进制流转换成文件 解决中文名乱码的问题

    1. **兼容性问题**:不同的浏览器可能对文件名的编码方式有不同的支持程度。在实际应用中,建议进行广泛的测试以确保跨浏览器的一致性。 2. **安全性考虑**:对于用户提供的文件名,应进行适当的验证和过滤,以防止...

    文件下载简单修改了中文编码问题

    2. **下载文件时的编码问题**:当用户尝试下载一个包含中文字符的文件时,服务器需要将文件名以正确的编码发送给客户端(浏览器或其他应用程序)。如果服务器与客户端之间对编码的理解不一致,就可能导致乱码。 3. ...

Global site tag (gtag.js) - Google Analytics