SmartUpload su = new SmartUpload();
// 初始化
su.initialize(pageContext);
// 设定contentDisposition为null以禁止浏览器自动打开文件,
//保证点击链接后是下载文件。若不设定,则下载的文件扩展名为
//doc时,浏览器将自动用word打开它。扩展名为pdf时,
//浏览器将用acrobat打开。
su.setContentDisposition(null);
// 下载文件
su.downloadFile("/WEB-INF/contract/"+ptc.getPtcUploadfilename());

解决方案 »

  1.   

    response.setContentType("application/octet-stream");
    response.addHeader("Content-Disposition",
                           "attachment; filename=\"testfile.txt\"");
    response.setHeader("Accept-ranges", "bytes");
      

  2.   

    <%@page  import="java.util.*"%>  
    <%@page  import="java.io.*"%>   
    <%@page  import="java.net.*"%> 
    <%
     String filename = request.getParameter("excelfilename");
     response.setHeader("pragma", "no-cache");
     File file = new File("resource/"+filename);
     String outputFile = file.getAbsolutePath();
     response.setHeader("Content-disposition","attachment; filename=" + filename );
     response.setContentType("text/plain");
     %>
     <%
    InputStream in = new FileInputStream(outputFile);
    ServletOutputStream outs = response.getOutputStream(); int bit = 256;
    int i = 0;
         try {
         while ((bit) >= 0)
    {
             bit = in.read();
             outs.write(bit);
             }
            } catch (Exception e) {
                       //logger.fatal("",e);
            }
            finally  {
            outs.flush();
            outs.close();
            in.close();
            }
     %>