package mypack;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class DownloadServlet extends HttpServlet {
public void doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException {
OutputStream out; //輸出響應正文的輸出流
InputStream in; //讀取本地文件的輸入流 //獲得filename請求參數
String filename=request.getParameter("filename");
if(filename==null){
out=response.getOutputStream();
out.write("Please input filename.".getBytes());
out.close();
return;
} //創建讀取本地文件的輸入流
in= getServletContext().getResourceAsStream("/store/"+filename);
int length=in.available(); //設置響應正文的MIME類型
response.setContentType("application/force-download");
response.setHeader("Content-Length",String.valueOf(length));
response.setHeader("Content-Disposition", "attachment;filename=\""+filename +"\" ");/** 把本地文件中的數據發送給客戶 */
out=response.getOutputStream();
int bytesRead = 0;
byte[] buffer = new byte[512];
while ((bytesRead = in.read(buffer)) != -1) {
out.write(buffer, 0, bytesRead);
}
in.close();
out.close();
}
}
posted on 2010-12-03 22:04
ForMeBlog 閱讀(210)
評論(0) 編輯 收藏 所屬分類:
JSP基礎類