文件下载功能

提供文件下载功能代码
String filepath = (String) req.getParameter("path");// 要下载的文件名称
		File file = new File(filepath);
		String downFilename = file.getName();
		resp.setHeader("Content-Disposition", "attachment; filename="
				+ downFilename);
		OutputStream out = resp.getOutputStream();
		InputStream in = new FileInputStream(file);
		byte[] buffer = new byte[1024*1024*10];
		int i = -1;
		while ((i = in.read(buffer)) != -1) {
			out.write(buffer, 0, i);
		}
		out.flush();
		out.close();
		in.close();


如果这里不用new byte[1024*1024*10] 而是new byte[fis.available()]来控制缓存的大小, 碰到大文件时就会OOM

----------------------
一般下载文件都会通过浏览器默认的方式, Java的断点续传方式需要客户端得配合, 没多大的意义

你可能感兴趣的:(文件下载)