文件下载

来源:互联网 发布:core keygen for mac 编辑:程序博客网 时间:2024/06/15 03:29
文件下载:  doGet()方法中执行


<dependency>
  <groupId>commons-io</groupId>
  <artifactId>commons-io</artifactId>
  <version>2.5</version>
</dependency>


<dependency>
  <groupId>commons-fileupload</groupId>
  <artifactId>commons-fileupload</artifactId>
  <version>1.3.3</version>
</dependency>




// 文件的存放路径
static String SAVE_DIR = "E:/testupload";


public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {


response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
String fileName = "servlet常用功能.txt";

if(request.getParameter("fileName")!=null){
fileName=request.getParameter("fileName");
}

System.out.println(fileName);


// 文件下载路径
String destPath = SAVE_DIR + "/" + fileName;
//URLEncoder.encode(fileName,"UTF-8")
// 告诉浏览器下载的文件名
response.setHeader("Location",URLEncoder.encode(fileName, "UTF-8"));
response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(fileName, "UTF-8"));
// 文件下载的输出流
OutputStream os = response.getOutputStream();


FileInputStream fis = new FileInputStream(destPath);
byte[] bu = new byte[2049];
int i = 0;
while ((i = fis.read(bu)) != -1) {
os.write(bu, 0, i);
}
os.flush();
os.close();


}

原创粉丝点击