文件的下载
1.程序代码如下:
package eduask;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URLEncoder;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//文件的下载;
public class FileLoad extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, 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=new FileInputStream(path);
//创建一个输出对象流;
OutputStream out=resp.getOutputStream();
int len=0;
byte[] b=new byte[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>