zoukankan      html  css  js  c++  java
  • SmartUpload上传文件(转载)

    实现文件的上传
     1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
     2 <html> 
     3 <head> 
     4 <title>文件上传</title> 
     5 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
     6 </head> 
     7 
     8 <body> 
     9 <p>&nbsp;</p> 
    10 <p align="center">上传文件选择</p> 
    11 <form method="POST" action="do_upload.jsp" enctype="multipart/form-data" > 
    12 
    13 <input type="hidden" name="TEST" value="good"> 
    14 <table width="75%" border="1" align="center"> 
    15 
    16 
    17 <tr> 
    18 <td><div align="center">119 <input type="FILE" name="FILE1" size="30"> 
    20 </div></td> 
    21 
    22 </tr> 
    23 <tr> 
    24 <td><div align="center">225 <input type="FILE" name="FILE2" size="30"> 
    26 </div></td> 
    27 </tr> 
    28 
    29 <tr> 
    30 <td><div align="center">331 <input type="FILE" name="FILE3" size="30"> 
    32 </div></td> 
    33 </tr> 
    34 
    35 <tr> 
    36 <td><div align="center">437 <input type="FILE" name="FILE4" size="30"> 
    38 </div></td> 
    39 </tr> 
    40 
    41 <tr> 
    42 <td><div align="center"> 用户名:
    43 <input type="text" name="username" >
    44 </div></td> 
    45 </tr> 
    46 
    47 <tr> 
    48 <td><div align="center"> 
    49 <input type="submit" name="Submit" value="提交"> 
    50 </div></td> 
    51 </tr> 
    52 
    53 
    54 </table> 
    55 </form> 
    56 </body> 
    57 </html> 
    upload.html
     1 <%@ page contentType="text/html; charset=gb2312" language="java" 
     2 import="java.util.*,com.jspsmart.upload.*" errorPage="" %> 
     3 <html> 
     4 <head> 
     5 <title>文件上传处理页面</title> 
     6 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
     7 </head> 
     8 
     9 <body> 
    10 
    11 <% 
    12     // 新建一个SmartUpload对象 
    13     SmartUpload su = new SmartUpload(); 
    14     // 上传初始化 ,PageContext是jsp的内置对象,在servlet不能直接使用,需要做一些处理
    15     su.initialize(pageContext); //
    16     // 设定上传限制 
    17     
    18     // 1.限制每个上传文件的最大长度。 
    19     su.setMaxFileSize(100000); 
    20     // 2.限制总上传数据的长度。 
    21     su.setTotalMaxFileSize(200000); 
    22     // 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt,jpg文件。 
    23     su.setAllowedFilesList("doc,txt,jpg"); 
    24     // 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat, jsp,htm,html扩展名的文件和没有扩展名的文件。 
    25     su.setDeniedFilesList("exe,bat,jsp,htm,html"); 
    26     
    27     
    28     // 上传文件 
    29     su.upload(); //同名的文件会被覆盖
    30     // 将上传文件全部保存到Tomcat指定目录 
    31     int count = su.save("/upload",SmartUpload.SAVE_VIRTUAL); 
    32     out.println(count+"个文件上传成功!<br>"); 
    33     
    34     // 利用Request对象获取参数之值 
    35     out.println("username="+su.getRequest().getParameter("username")+"<br><br >"); 
    36 
    37     // 逐一提取上传文件信息,同时可保存文件。 
    38     for (int i=0;i<su.getFiles().getCount();i++){ 
    39     
    40         //Files类:所有上传文件的集合
    41         //getCount取得上传文件的数目
    42         //getFile取得指定位移处的文件对象File
    43         //getSize取得上传文件的总长度,可用于限制一次性上传的数据量的大小
    44         
    45         
    46         com.jspsmart.upload.File file = su.getFiles().getFile(i); 
    47          //SmartUpload类   getFiles取得所有上传文件,以File对象形式返回
    48         // 若文件不存在则继续(isMissing 判断用户是否选择了文件,也即对应的表单项是否有值。
    49         //选择了文件时,它返回false,未选文件时,它返回true)
    50         if (file.isMissing()) continue; 
    51          file.saveAs("D:\Workspaces\MyEclipse 10\Test\WebRoot\upload\" + file.getFileName(), su.SAVE_PHYSICAL);
    52 
    53         // 显示当前文件信息 
    54         out.println("<TABLE BORDER=1>"); 
    55         out.println("<TR><TD>表单项名(FieldName)</TD><TD>" 
    56         + file.getFieldName() + "</TD></TR>"); 
    57         out.println("<TR><TD>文件长度(Size)</TD><TD>" + 
    58         file.getSize() + "</TD></TR>"); 
    59         out.println("<TR><TD>文件名(FileName)</TD><TD>"
    60         + file.getFileName() + "</TD></TR>"); 
    61         out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>" 
    62         + file.getFileExt() + "</TD></TR>"); 
    63         out.println("<TR><TD>文件全名(FilePathName)</TD><TD>" 
    64         + file.getFilePathName() + "</TD></TR>"); 
    65         out.println("</TABLE><BR>"); 
    66         
    67         // 将文件另存 
    68         // file.saveAs("/upload/" + myFile.getFileName()); 
    69         // 另存到以WEB应用程序的根目录为文件根目录的目录下 
    70          //file.saveAs("D:\Workspaces\MyEclipse 10\Test\WebRoot\upload\" + file.getFileName(), su.SAVE_PHYSICAL); 
    71         // 另存到操作系统的根目录为文件根目录的目录下 
    72         // file.saveAs("c:\temp\" + myFile.getFileName(), su.SAVE_PHYSICAL); 
    73 
    74     } 
    75 %> 
    76 
    77 </body> 
    78 </html> 
    do_upload.jsp
    实现文件的下载
     1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
     2 <html> 
     3 <head> 
     4 <title>下载</title> 
     5 <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
     6 </head> 
     7 <body> 
     8 <a href="do_download.jsp">点击下载</a> 
     9 </body> 
    10 
    11 </html> 
    download.html
     1 <%@ page contentType="text/html;charset=gb2312" 
     2 import="com.jspsmart.upload.*" %>
     3 <% 
     4     // 新建一个SmartUpload对象 
     5     SmartUpload su = new SmartUpload(); 
     6     // 初始化 
     7     su.initialize(pageContext); 
     8     // 设定contentDisposition为null以禁止浏览器自动打开文件, 
     9     //保证点击链接后是下载文件。若不设定,则下载的文件扩展名为 doc时,
    10     //浏览器将自动用word打开它。扩展名为pdf时, 浏览器将用acrobat打开。 
    11     su.setContentDisposition(null); 
    12     // 下载文件 
    13     su.downloadFile("/upload/01.jpg"); 
    14 %> 
    do_download.jsp
  • 相关阅读:
    asp.net jquery+ajax异步刷新1
    Android自定义组合控件:UIScrollLayout(支持界面滑动及左右菜单滑动)
    南京三星面试准备1--字符串
    如何有效的设立目标
    MySQL 主主复制
    POJ 2914 Minimum Cut 最小割算法题解
    openstack中虚拟机怎么与物理机通信
    SpringMVC+Spring+Mybatis+Mysql项目搭建
    Android面试准备 第二天 第五例 数据存储
    COCOS2D-X 3.0在MAC下创建新IOS项目:
  • 原文地址:https://www.cnblogs.com/-rfq/p/7147750.html
Copyright © 2011-2022 走看看