我的超链接<a href='http://localhost:8080/servletPro/Servlet3?filename=Winter >点击下载</a>主要是我想在servlet中实现下载功能  

String name=request.getParameter("filename");方法可以得到filename名字 但是
response.setHeader("Content-Disposition","attachment;filename=name");就不好使了 该怎么办啊啊啊

解决方案 »

  1.   

    response.setHeader("Content-Disposition","attachment;filename=" + name);
      

  2.   

    还是不行啊
    description The server encountered an internal error () that prevented it from fulfilling this request.exception  java.io.FileNotFoundException: C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\servletPro\image\name (系统找不到指定的文件。)
    java.io.FileInputStream.open(Native Method)
    java.io.FileInputStream.<init>(FileInputStream.java:106)
    java.io.FileInputStream.<init>(FileInputStream.java:66)
    com.hsp.servlet.Servlet3.doGet(Servlet3.java:29)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:803)报了这样一个错 是不是String path=this.getServletContext().getRealPath("/image/name");
    这一步也有错呢 
      

  3.   

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    response.setContentType("text/html");
    String name=request.getParameter("filename");
    System.out.println(name);
    response.setHeader("Content-Disposition","attachment;filename="+name);
    String path=this.getServletContext().getRealPath("/image/name");
    //System.out.println("path="+path);
      
    FileInputStream fis=new FileInputStream(path);
      
    byte buff[]=new byte[1024];
    int len=0;
    OutputStream os=response.getOutputStream();
    while((len=fis.read(buff))>0) {
    os.write(buff,0,len);
    }
    os.close();
    fis.close();}