`
陈修恒
  • 浏览: 204662 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA EE 下载,文件名显示中文

    博客分类:
  • java
阅读更多
HttpServletRequest request = getHttpRequest();
HttpServletResponse response = getHttpResponse();
response.reset();

response.setCharacterEncoding(SysConfig.CHARSET.name());
response.setContentType(item.getCContentType());
response.setHeader("Connection", "close");

// 生成中文文件名
String filename = item.getCName();
String newFilename = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) +"."+ FileUtils.getFileSuffix(filename);
try {
String header = request.getHeader("user-Agent");
if (null != header) {
header = header.toUpperCase();
}
if (null == header) {
// 不能识别浏览器类型, 不处理
} else if (header.contains("MSIE")) { // IE
newFilename = URLEncoder.encode(filename, "UTF-8");
} else if (header.contains("FIREFOX")){ // 火狐
newFilename = new String(filename.getBytes("UTF-8"), "ISO8859-1");
} else if (header.contains("CHROME")) {
newFilename = new String(filename.getBytes("UTF-8"), "ISO8859-1");
}
} catch (UnsupportedEncodingException e) {
logger.error("不支持的字符集", e);
}
response.setHeader("Content-disposition", "attachment;filename=\"" + newFilename + "\"");


// 文件输出
OutputStream outStream = null;
InputStream inStream = null;
try{
response.setContentLength((int) item.getBContent().length());
outStream = response.getOutputStream();
inStream = item.getBContent().getBinaryStream();
IOUtils.copy(inStream, outStream);
} catch (Exception e) {
logger.error("下载文件出错[newsId=" + newsId + "]", e);
} finally {
IOUtils.closeQuietly(inStream);
IOUtils.closeQuietly(outStream);
}
分享到:
评论

相关推荐

    Java EE编程 源代码

    2. **第9组**:同样,这可能表示第9组的学习资料,但没有具体的子文件名,可能涵盖广泛的Java EE概念。 3. **第21组**:这部分源码可能涉及4-25、4-26、4-27、4-28,可能包含MVC架构、数据访问对象(DAO)模式、JPA...

    Java EE-test2

    文件名"test2"可能是一个测试目录或者一个具体的测试项目,可能包含了一些单元测试或集成测试的代码,这对于确保Java EE应用的质量和稳定性至关重要。通过运行这些测试,开发者可以验证代码的功能,确保其符合预期,...

    myeclipse 6 java EE 开发中文手册

    【标题】"myeclipse 6 java EE 开发中文手册" 涵盖了MyEclipse 6这一经典集成开发环境在Java企业级应用开发中的使用方法和技巧。MyEclipse是Eclipse的一个强大扩展,专门针对Java EE平台提供了一系列的开发、调试和...

    java EEdemo

    文件名"Demos-JavaSE"可能表示这个压缩包中的示例主要集中在Java标准版(Java SE)的基础之上,Java SE提供了Java EE运行所需的底层环境,包括核心类库、JVM(Java虚拟机)以及开发工具。Java EE在Java SE的基础上...

    java ee练习代码,基础语法+高级特性 Java学习资料

    Java EE,全称为Java Platform, Enterprise Edition,是Java平台针对企业级应用开发的一套标准规范。这个标准由Java Community Process(JCP)制定,旨在提供一个用于构建分布式、多层企业应用程序的框架。Java EE...

    企业人事管理系统(java ee)

    1. **Java EE**: Java EE(Java Platform, Enterprise Edition),也被称为Java EE 8或 Jakarta EE,是Oracle公司提供的一个用于开发企业级分布式应用的开放源码框架。它包含了多种服务和API,如Servlet、JSP、JPA、...

    基于JAVA EE校园订餐系统

    11. 源码提供:作为毕设项目,源码可供下载,这为学习者提供了宝贵的参考材料,他们可以通过阅读和分析代码,了解JAVA EE在实际项目中的应用。 总的来说,基于JAVA EE的校园订餐系统是一个综合性的项目,涉及到前端...

    基于Java EE平台项目管理系统源码.zip

    【标题】: "基于Java EE平台的项目管理系统源码" 这个标题揭示了我们要讨论的核心内容——一个使用Java EE平台开发的项目管理系统。Java EE(Java Platform, Enterprise Edition),也被称为Java EE,是Java语言在...

    Java EE Security (JSR-375) Reference Implementation.zip

    通过提供的文件列表(虽然这里没有具体的文件名),开发者可以深入研究这些示例,学习如何在Java EE应用中正确地实现和配置安全机制。 总的来说,Java EE Security(JSR 375)是Java EE平台中一个关键的组成部分,...

    java ee 项目案例 源程序

    Java EE(Enterprise Edition)是Java平台的企业版,用于构建服务器端的企业级应用程序。这个平台包含了多个组件和服务,如Servlet、JSP(JavaServer Pages)、EJB(Enterprise JavaBeans)、JMS(Java Message ...

    Java EE项目原型设计工具

    Java EE项目原型设计工具是开发Java企业级应用时不可或缺的一部分,它主要负责在项目初期创建交互式的用户界面原型,帮助开发者、设计师以及客户快速理解应用的功能布局和用户体验。这种工具通常具备直观易用的拖放...

    Java EE电商项目(使用SSM框架).zip

    【标题】"Java EE电商项目(使用SSM框架)"是一个综合性的实战项目,它涵盖了Java企业级开发中的核心技术和工具。在这个项目中,开发者使用了Spring、Spring MVC(统称为SSM)作为主要的框架,来构建一个完整的电子...

    《Java EE 5开发基础与实践》第4章课件

    CSS在Java EE 5的应用主要体现在JSP(JavaServer Pages)和JSF(JavaServer Faces)中,用于美化和控制Web组件的显示效果。 在第4章的课程中,可能讲解了以下CSS的关键知识点: 1. **CSS基础**:了解CSS的基本语法...

    Java EE材料

    在“MulToMul”这个文件名中,虽然没有明确的Java EE相关性,但可能是某个特定功能或项目的名称,比如一个涉及多个到多个关系的业务场景,例如用户与角色的多对多关联,或者产品与供应商的多对多关联等。在这个项目...

    基于Java EE的文件批量上传的设计与实现

    在Java EE平台上,文件批量上传是一项常见的功能,尤其在企业级应用中,如文档管理系统、电商平台等,都需要处理用户上传的大量文件。本设计与实现主要涵盖了以下几个关键知识点: 1. **Servlet与JSP**:Java EE...

    基于JAVA EE的网络版坦克大战的设计与实现

    【文件名称列表】虽然没有提供具体的文件名,但可以推测一个完整的JAVA EE项目通常会包含以下组成部分: 1. **源代码**:分为前端(HTML、CSS、JavaScript,可能使用了库如jQuery或Vue.js)和后端(Java类,如...

    JAVA-EE-api-中英文对照版

    此“JAVA-EE-api-中英文对照版”是一个宝贵的资源,对于Java EE开发者来说,能够帮助他们理解和使用Java EE API,同时提供了中文翻译,便于理解复杂的概念和技术细节。 Java EE API包含了以下几个关键组件和接口: ...

Global site tag (gtag.js) - Google Analytics