文件的下载
1.程序代码如下:
packageeduask;
importjava.io.FileInputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.OutputStream;
importjava.net.URLEncoder;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
//文件的下载;
publicclassFileLoadextendsHttpServlet {
@Override
protectedvoidservice(HttpServletRequest req, HttpServletResponse resp)
throwsServletException, IOException {
//设置响应编码方式;
resp.setCharacterEncoding("utf-8");
resp.setContentType("text/html;charset=utf-8");
//获得下载文件绝对路径;
String path=this.getServletContext().getRealPath("/downLoad/Tomcat.doc");
String fileName=path.substring(path.lastIndexOf("\\")+1);
//编码;
fileName=URLEncoder.encode(fileName, "utf-8");
resp.setHeader("Content-Disposition", "attachment;filename="+fileName);
//创建一个输入对象流;
InputStream is=newFileInputStream(path);
//创建一个输出对象流;
OutputStream out=resp.getOutputStream();
intlen=0;
byte[] b=newbyte[1024];
while((len=is.read(b))>0){
out.write(b, 0, len);
}
}
}
2.web.xml配置文件,配置如下:
<!--文件的下载-->
<servlet>
<servlet-name>FileLoad</servlet-name>
<servlet-class>eduask.FileLoad</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>FileLoad</servlet-name>
<url-pattern>/FileLoad</url-pattern>
</servlet-mapping>