读取数据库中内容实现文件的下载
2012-04-19 19:16
134 查看
因为将上传的内容放入到数据库中,所以也就不方便给定一个确切的地址让浏览器来下载,希望直接通过数据流的读
取实现文件的下载,这样更加方便一些。下面我们来演示一下文件的下载代码
这里主要就是下载的设置的那些头文件,请求头,还有就是下载的文件名如果含有中文,需要进行一下字符集的编码
才能够实现不乱码!
取实现文件的下载,这样更加方便一些。下面我们来演示一下文件的下载代码
package oop.hg.ytu.servlet; import java.io.IOException; import java.io.InputStream; import java.net.URLEncoder; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import oop.hu.ytu.dao.DownLoadDomain; public class DownLoad extends HttpServlet { /** * 实现文件的下载 */ private static final long serialVersionUID = 1L; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { DownLoadDomain dao = new DownLoadDomain(); response.setContentType("text/html;charset=UTF-8"); // 设置为下载application/x-download response.setContentType("application/x-download"); String fileName = request.getParameter("fileName"); fileName = new String(fileName.getBytes("ISO-8859-1"),"UTF-8"); String type = dao.getType(fileName); type = "."+type; type = fileName + type; type = URLEncoder.encode(type, "UTF-8"); response.addHeader("Content-Disposition", "attachment;filename=" + type); InputStream in = dao.readBlob(fileName); ServletOutputStream out = response.getOutputStream(); byte[] buff = new byte[1024]; int i = 0; while((i = in.read(buff))>0){ out.write(buff, 0, i); } out.flush(); out.close(); in.close(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
这里主要就是下载的设置的那些头文件,请求头,还有就是下载的文件名如果含有中文,需要进行一下字符集的编码
才能够实现不乱码!
相关文章推荐
- 读取数据库中内容实现文件的下载
- 实现动态文件内容下载
- 心得6--Response介绍和如何实现动态文件内容的下载详细介绍
- 心得6--Response介绍和如何实现动态文件内容的下载详细介绍
- 通过FTP服务端来实现匿名用户和基本用户的访问,可以实现文件上传和下载。通过web网站来浏览内容
- MVC 以内容字节数组形式 实现文件上传 下载
- JS实现页面HTML内容以另存为的文件形式下载保存
- apache使用.htaccess文件实现屏蔽wget下载网站内容
- java实现FTP文件上传与文件下载
- 用jsp实现文件的下载(download.jsp)
- java实现文件导出和下载方法
- Java实现远程HDFS的文件操作(新建、上传、下载、删除)
- NIO利用磁盘映射 实现的文件内容查找
- 通过ServletContext实现中文文件的下载
- ios断点续传:通过NSURLSession实现文件下载功能
- ASP实现文件直接下载(转帖)
- 利用Python脚本实现-----登陆新浪微博&批量下载收藏内容
- SQL定时自动备份,并将备份文件加密压缩并自动下载的实现
- Linux综合辅导:LinuxShell实现ftp自动上传下载文件
- django实现下载文件功能