`

java代码中文件下载

阅读更多
一、文件下载
@RequestMapping(value="/download")
	public void download(ModelAndView mav, HttpServletRequest request,
			HttpServletResponse response, @RequestParam(value="id",required=true) String id) {
		
		Datadownload data = null;
		
		//根据id获得资料对象
		data = datadownloadSelectService.getByID(Long.parseLong(id)); 
		
		//客户端IP
		String ip = request.getLocalAddr();
		
		//得到文件真实路径
		ServletContext context = request.getSession().getServletContext();
		String filename = context.getRealPath(data.getFile_url());
		
		//新的文件名+扩展名
		String newname = data.getOldname()+"."+data.getExpand();
		
		try {
			// 此文件是否存在
			String path = filename;
			File file = new File(path);
			if (file.exists()&&data.getData_status()!=5) {
				//存在的情况下,设置response参数
				response.setContentType("application/force-download");
				String oldname = URLEncoder.encode(newname, "UTF-8");
				oldname = newname;
		        if(request.getHeader("user-agent").indexOf("MSIE") != -1) {   
		        	oldname = java.net.URLEncoder.encode(oldname,"utf-8");   
		        } else {   
		        	oldname = new String(oldname.getBytes("utf-8"),"iso-8859-1") ;   
		        }
				response.setHeader("Content-Disposition",
						"attachment;filename=" + oldname);
				response.setContentLength((int) file.length());
				//参数设置结束
				
				//文件进入输入流
				InputStream in = new FileInputStream(file);
			
				//设置输出流 为response
				OutputStream out = response.getOutputStream();
				
				//设置缓冲区并读出
				byte[] b = new byte[1024];
				int len = -1;
				while ((len = in.read(b)) != -1) {
					out.write(b, 0, len);
				}
				out.close();
			} else {
				System.err.println("你下载文件已经不存在...");
			}
		} catch (Exception e) {

		}


		
	}


二、java中压缩文件,并下载,实例链接:
http://blog.163.com/chiyunjuan@126/blog/static/34119412201182055051171/
分享到:
评论

相关推荐

    java代码实现文件上传和下载

    在java代码中实现文件的上传和下载,通过页面的file文件上传到java代码段,获取文件的大小和名字

    java代码审查规范文档

    Code Review主要用来在软件工程过程中改进代码质量,通过Code Review可以达到如下目的: .在项目早期就能够发现代码中的BUG。 .帮助初级开发人员学习高级开发人员的经验,达到知识共享。 .避免开发人员犯一些很常见...

    java api中文文档

    在Java 1.8的CHM文件中,开发者可以找到关于这些新特性的详细介绍,包括如何使用lambda表达式、Stream API的用法、新的日期时间API的操作以及接口的新功能。CHM(Compiled HTML Help)是一种微软开发的帮助文件格式...

    java代码统计工具

    在这个场景中,我们关注的是一个名为"java代码统计工具"的应用,它专门用于统计.java文件中的代码行数和注释行数。这个工具包含了三个关键文件:`java代码统计工具.exe`是可执行程序,用户可以直接运行来执行统计;`...

    把wsdl文件或地址转化成java代码工具

    在MyEclipse中,有一个内置的功能,可以将WSDL文件转换为Java代码,这个过程通常被称为“代码生成”或“代码反编译”。这样,开发者无需手动编写调用Web服务的Java代码,只需导入WSDL文件,MyEclipse就能自动生成...

    java上传下载经典代码

    java上传下载经典代码,特别针对中文做了处理。作者牛安心

    ajax实现java文件下载

    6. **新建 文本文档.txt**:这可能是示例中的一个测试文件,用于演示如何通过Ajax进行下载。在实际应用中,这个文件的名称和类型将由用户选择或由业务逻辑决定。 具体实现步骤: 1. **前端**:在JSP文件中,使用...

    java8中文文档API

    这个"java8中文文档API"是一个针对Java 8的中文开发文档,以.CHM(Microsoft帮助文件)格式提供,方便中国开发者查阅和学习。CHM文件是一种压缩的HTML帮助文件,通常包含了详细的类库、方法、接口和其他编程元素的...

    java版源代码下载

    4. **资源文件(Resource Files)**:这些可能是图片、配置文件或其他非Java代码的文件,它们在运行时对程序至关重要。 5. **测试代码(Test Code)**:通常位于`src/test`目录下,使用JUnit或其他测试框架来验证...

    上传下载Excel的Demo,java代码

    标题 "上传下载Excel的Demo,java代码" 描述了这个示例项目的核心功能,即在Java环境下处理Excel文件的上传和下载操作。这通常涉及到Web应用程序中的数据导入导出功能,便于用户通过浏览器进行数据的交互。在这个项目...

    完整的Java代码审计学习笔记资源(免费下载)

    .gitignore 第一的 4年前 自述文件.md 添加一些关于 jndi 的内容 3年前 ...java代码审计-文件操作.md 第一的 4年前 java代码审计-环境搭建+前置知识.md 第一的 4年前 java代码审计-表达式注入.md 第一的

    Java2Pas Java代码转pas代码

    此外,如果Java代码中包含了一些特定于Java平台的API调用,这些部分在Pascal中可能需要替换为相应的函数或库。 总的来说,Java2Pas是一个方便的工具,能够帮助开发者跨越Java和Pascal之间的语言障碍,提高代码复用...

    很强大的java代码混淆工具 Jocky

    Jockey跟其他混淆工具不同的是:它是直接对编译过程做文章,也就是在把java文件编译为class文件的过程中对代码进行混淆,混淆后的代码中包含很多JVM 指令,大家知道JVM指令是面向机器的,人类一般很难看懂!...

    文件上传下载java代码

    java web开发实现文件上传下载,java代码部分的实现,

    JAVA下载远程文件到本地的最精简代码

    JAVA下载远程文件到本地的最精简代码,就一行代码,不信自己看,而且是官方提供,绝对适合你,一个远程URL,一个本地路径,文件就在你的电脑上了

    JAVA8API-官方文档下载-中文版

    **JAVA8 API 中文官方文档概述** JAVA8 API 是Java开发者的重要参考资料,它详细阐述了Java 8平台的核心类库,包括各种接口、类...通过学习和应用这些知识,开发者可以编写出更加高效、简洁的Java代码,提升软件质量。

    java代码文档

    【标题】"java代码文档"涉及的是Java编程语言的学习与实践,主要包含了作者在学习过程中积累的代码示例和心得体验。这些文档是个人技能提升和日后工作的参考资料,旨在加深对Java语言的理解和应用。 【描述】"自己...

    Java源码资料JAVA开发软件设计源代码20个合集.zip

    Java实现工作流实例源码打包下载.rar Java用Swing开发的固定资产管理系统(完整版+源码).zip Java课程设计案例精编源代码.rar java贪吃蛇小游戏代码java小游戏源码.zip TankWar1.7.zip TencentQQ.rar WuyouTetris....

    OnlyOffice官网示例Java代码

    在这个"OnlyOffice官网示例Java代码"中,我们可以看到官方提供的Java代码示例,这些示例经过修改后可以直接运行,只需简单地调整服务器IP地址即可。 首先,让我们了解一下OnlyOffice的API接口。OnlyOffice 提供的...

    java代码生成数字证书

    Java代码生成数字证书涉及到几个关键概念和技术,包括Java的密钥和证书管理、RSA加密算法以及非交互式证书创建。在此,我们将深入探讨这些主题,以便理解如何在Java环境中生成和使用数字证书。 1. **数字证书**:...

Global site tag (gtag.js) - Google Analytics