downloadfileservlet.java

来自「java文件上传功能,有批量上传的功能,java文件上传功能,有批量上传的功能」· Java 代码 · 共 57 行

JAVA
57
字号
package com.sitinspring.action;

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.sitinspring.util.UploadUtil;

/**
 * 用于文件下載处理的Servlet
 * @author sitinspring
 *
 * @date 2008-2-12
 */
public class DownloadFileServlet extends HttpServlet {
	private static final long serialVersionUID = 56890894234786L;

	public void doPost(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, java.io.IOException {

		// 要下載的文件名		
		String filename=request.getParameter("file");	
		
		// 文件真实地址
		String filePathname = UploadUtil.getUploadPath()+File.separator+filename;		
		
		// 设置内容格式
		response.setContentType("text/x-msdownload");
		
		// 设置文件头信息
		response.setHeader("Content-Disposition","attachment; filename=" + filename + "");
		
		OutputStream outputStream = response.getOutputStream();
		InputStream inputStream = new FileInputStream(filePathname);
		byte[] buffer = new byte[1024];
		int i = -1;
		while ((i = inputStream.read(buffer)) != -1) {
			outputStream.write(buffer, 0, i);
		}
		outputStream.flush();
		outputStream.close();
		inputStream.close();
		outputStream = null;
	}

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, java.io.IOException {
		doPost(request, response);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?