smartupload下载文件使用

以下内容转自:http://cheerfulmao.bokee.com/4465982.html

 

 

下载页面download.htm:
<pre>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>Download.htm</title>  
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">      
  </head> 
  <body>
    <a href="./download.jsp">点击下载</a>
  </body>
</html>
</pre>
下载实现:


<%@ page contentType="text/html;charset=gb2312" %>
<%@ page import="com.jspsmart.upload.*" %>
<%  
 System.out.println("Download.jsp start!");
 String strFileName="D:\\Xfwj.zip";
 com.jspsmart.upload.SmartUpload mySmartUpload=new com.jspsmart.upload.SmartUpload();     

mySmartUpload.initialize(pageContext);   System.out.println("initialize success!");  

mySmartUpload.setContentDisposition(null);
 mySmartUpload.downloadFile(strFileName);
%>

附:
  利用上述代码下载TXT文件时,出现如下错误:
 java.lang.IllegalStateException: getOutputStream() has already been called for this response

  解决方法有如下几种:
  (1)修改jspSmartUpload.jar包
  (2)采用Servlet替代download.jsp
   public void perform(HttpServletRequest request, HttpServletResponse response)
 throws ServletException, IOException {
  SmartUpload su = new SmartUpload();
  su.initialize(config,request,response);
  su.setContentDisposition(null);
  String strDownloadFilename = "D:\\AA.txt";
  try {
   su.downloadFile(strDownloadFilename);
  } catch (ServletException e) {
   System.out.println("ServletException");
   e.printStackTrace();
  } catch (IOException e) {
   System.out.println("文件不存在!");
   e.printStackTrace();
  } catch (SmartUploadException e) {
   System.out.println("SmartUploadException");
   e.printStackTrace();
  }
  
 }

你可能感兴趣的:(html,jsp,servlet)