`

Java Web文件下载

阅读更多

        工作中,一同事做下载功能时,在Chrome浏览器下不能正常,最后发现是需要对下载文件名做处理,特记录,源代码如下:

response.reset();
response.setContentType("application/octet-stream");
String filename = "";
if(httpRequest.getHeader("User-Agent").toUpperCase().indexOf("MEIE") > 0){
	filename = URLEncoder.encode(file_name, "UTF-8");
}else{
	filename = new String(file_name.getBytes("UTF-8"),"ISO8859-1");
}
//1:下载;2:预览
if("2".equals(file_type)) {
	response.setHeader("Content-Disposition", "inline;filename=" + filename);
}else {
	response.setHeader("Content-Disposition", "attachment;filename=" + filename);
}

        其中,request.getHeader("User-Agent")用来判断浏览器类型。

 

附:在获取前台传送过来的中文时,往往会出现乱乱码,针对不同的浏览器,需做特殊处理

String fileName = request.getParameter("fileName");
// 解决中文文件名乱码问题
if (request.getHeader("User-Agent").toLowerCase()
		.indexOf("firefox") > 0) {
		fname = new String(fileName.getBytes("UTF-8"), "ISO8859-1"); // firefox浏览器
} else if (request.getHeader("User-Agent").toUpperCase()
		.indexOf("MSIE") > 0) {
	fname = URLEncoder.encode(fileName, "UTF-8");// IE浏览器
}else if (request.getHeader("User-Agent").toUpperCase()
		.indexOf("CHROME") > 0) {
	fname = new String(fileName.getBytes("UTF-8"), "ISO8859-1");// 谷歌
}

 

 

 

分享到:
评论

相关推荐

    java web文件上传-下载-查看操作.docx

    Java Web 文件上传、下载、查看操作 Java Web 文件操作是日常开发解决的问题,主要是针对解决文件的上传下载、查看操作。下面是相关的知识点: 一、Java Web 文件上传操作 * 文件上传是指通过 HTTP 请求将文件从...

    Java Web文件下载,解决了使用IE11下载文件时所出现的乱码问题

    在Java Web开发中,文件下载是一项常见的功能,尤其在企业级应用中不可或缺。当用户需要获取服务器上的资源,如文档、图片或者视频等,通常会通过点击下载链接触发服务器进行文件传输。本项目针对的一个重要问题就是...

    java web开发帮助文档

    这个“java web开发帮助文档”压缩包显然为开发者提供了丰富的资源,旨在协助他们提升开发效率和理解相关技术。 1. **Java API**: Java API是Java平台的核心库,它包含了各种类和接口,供开发者在编写Java程序时...

    java 文件web下载类

    java 文件web下载类适合所有浏览器

    ajax实现java文件下载

    2. **Java文件下载**:在Java Web开发中,服务器端通常使用Servlet或Controller来处理文件下载请求。这些组件会根据客户端请求,读取文件内容,设置合适的HTTP响应头(如Content-Type,Content-Disposition等),并...

    FileUtils java web 文件上传下载工具

    在Java Web开发中,文件上传和下载是常见的功能需求,特别是在构建用户交互性强的Web应用时。`FileUtils`是一个方便的工具类,用于简化这些操作。本篇将详细讲解如何利用`FileUtils`实现文件的上传和下载,并介绍...

    Java Web开发技术文档

    Java Web开发技术文档是针对那些想要深入理解和掌握Java在Web应用程序开发中的应用的学习资源。这份文档详尽地涵盖了从基础到高级的各种主题,旨在帮助不同水平的开发者,无论是初学者还是有经验的程序员,都能从中...

    java web 开发技术大全光盘文件(part03)

    由于上传权限只有20M所以打成了5个rar包(java web 开发技术大全光盘文件(...下载后的文件名为Java Web (G).part1.rar、Java Web (G).part2.rar、Java Web (G).part3.rar、Java Web (G).part4.rar、Java Web (G).part5....

    java web的api

    Java Web API是Java平台用于构建Web应用程序的一组接口和类,涵盖了从服务器端处理到客户端交互的各种技术。在这个描述中,我们关注的关键技术包括Hibernate、Java EE、JDK、jQuery、Spring以及W3C School的API。让...

    java web文件上传-下载-查看操作

    在Java Web开发中,文件上传、下载和查看是常见的功能需求,尤其在构建交互性强的Web应用程序时。这里我们将深入探讨这些操作的核心概念和技术。 **文件上传** 文件上传主要是指用户通过Web表单将本地文件传输到...

    java web API文档

    Java Web API文档是开发Java Web应用的重要参考资料,涵盖了多种框架和技术。以下是对这些技术的详细说明: 1. **Servlet**: Servlet是Java EE的一部分,它提供了对HTTP协议的支持,使得开发者可以创建动态Web...

    java web 开发技术大全光盘文件(part02)

    由于上传权限只有20M所以打成了5个rar包(java web 开发技术大全光盘文件(...下载后的文件名为Java Web (G).part1.rar、Java Web (G).part2.rar、Java Web (G).part3.rar、Java Web (G).part4.rar、Java Web (G).part5....

    java web 开发技术大全光盘文件(part04)

    由于上传权限只有20M所以打成了5个rar包(java web 开发技术大全光盘文件(...下载后的文件名为Java Web (G).part1.rar、Java Web (G).part2.rar、Java Web (G).part3.rar、Java Web (G).part4.rar、Java Web (G).part5....

    java web接口开发demo

    最后,为了便于部署和管理,Java Web应用通常被打包成WAR文件,然后部署到像Tomcat、Jetty这样的应用服务器上。`mServer`可能就是这样一个可部署的WAR包,或者包含构建WAR包所需的全部资源。 总的来说,"java web...

    Java Web从入门到精通光盘源码1-15

    然后,根据每个项目的README或指示,配置所需的jar文件,构建并运行源码,逐步深入学习和理解Java Web的各个方面。同时,结合理论学习,如阅读相关书籍、观看教学视频,将有助于你更全面地掌握Java Web开发。

    java web开发技术大全1 pdf

    JSP+Servlet+Struts+Hibernate+Spring+Ajax》内容包括Web客户端技术、JSP/Servlet技术、Struts 2(*、类型转换、输入校验、上传和下载文件、Struts 2的各种标签、对 AJAX的支持等)、Spring(Ioc容器、装配Java Bean...

    深入分析java web

    书中可能深入讲解了Java的I/O流体系,包括字符流和字节流,以及如何在Web环境中实现高效的文件读写和网络通信。 3. **javac编译原理**:javac是Java的官方编译器,理解其工作原理有助于开发者优化代码和解决编译...

    Java Web开发常见问题.pdf

    ### Java Web开发中常见的中文乱码问题解析 在Java Web开发过程中,中文乱码问题是开发者经常遇到的一个挑战。这些问题主要源于Java默认的Unicode编码与HTML页面及表单默认的Latin-1编码之间的不兼容,以及在不同的...

    Java/Java web参考文档

    【标题】"Java/Java Web参考文档"是一个涵盖了Java编程语言和Java Web开发技术的综合资源,旨在为开发者提供详尽的指导和帮助。这个压缩包可能包含了一份关于DHTML(Dynamic HTML)的中文参考手册,这对于理解如何在...

    Java实现web在线预览office文档

    综上所述,Java实现Web在线预览Office文档和PDF文档主要涉及文件读取、内容转换、文档预览和服务器端的文件操作。通过合理选择和使用相应的库和工具,可以构建出稳定且高效的在线预览系统。在Linux环境下,结合开源...

Global site tag (gtag.js) - Google Analytics