微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

dark找来的直接就能用的例子--关于swfupload的样例

原文地址请点此处  最好之处在于,这个代码的超链接,我就是用这个鼓捣出来滴,下载地址

SWFUpload官方的例子都是PHP的,在这里提供一个Java版的最简单的使用例子,使用JSP页面完成所有操作。

效果图如下


 

实现上传,分为三步:

 

1、JavaScript设置SWFUpload部分(与官方例子类似):

<span style="font-family:KaiTi_GB2312;font-size:14px;">var upload;  
  
 window.onload = function() {  
upload = new SWFUpload({  
  
// 处理文件上传的url  
upload_url: "${pageContext.request.contextpath}/swfupload/example.jsp?upload=1",// 上传文件限制设置  
file_size_limit : "10240",// 10MB  
file_types : "*.jpg;*.gif;*.png",//此处也可以修改成你想限制的类型,比如:*.doc;*.wpd;*.pdf  
file_types_description : "Image Files",file_upload_limit : "0",file_queue_limit : "1",// 事件处理设置(所有的自定义处理方法都在handler.js文件里)  
file_dialog_start_handler : fileDialogStart,file_queued_handler : fileQueued,file_queue_error_handler : fileQueueError,file_dialog_complete_handler : fileDialogComplete,upload_start_handler : uploadStart,upload_progress_handler : uploadProgress,upload_error_handler : uploadError,upload_success_handler : uploadSuccess,upload_complete_handler : uploadComplete,// 按钮设置  
button_image_url : "swfupload/xpbutton.png",// 按钮图标  
button_placeholder_id : "spanButtonPlaceholder",button_width: 61,button_height: 22,// swf设置  
flash_url : "swfupload/swfupload.swf",custom_settings : {  
    progresstarget : "fsuploadProgress",cancelButtonId : "btnCancel"  
},// Debug 设置  
    debug: false  
});  
 }  </span>

2、页面显示部分:

<span style="font-family:KaiTi_GB2312;font-size:14px;"><div class="flash" id="fsuploadProgress"></div>
<div style="padding-left: 5px;">
	 <span id="spanButtonPlaceholder"></span>
	 <input id="btnCancel" type="button" value="取消" onclick="cancelQueue(upload);" 
disabled="disabled" style="margin-left: 2px; height: 22px; font-size: 8pt;" />
</div></span>

3、Java处理文件上传部分:

<span style="font-family:KaiTi_GB2312;font-size:14px;">String uploadSign = request.getParameter("upload");  
 String rootPath = request.getParameter("rootPath");  
 String path = request.getParameter("path");  
 if(rootPath == null) rootPath = "";  
    rootPath = rootPath.trim();  
 if(rootPath.equals("")){  
rootPath = application.getRealPath("/swfupload/files");  
 }  
 if(path == null) {  
path = rootPath;  
 }else{  
path = new String(Base64.decodeBase64(path.getBytes()));  
 }  
  
 //上传操作  
 if(null != uploadSign && !"".equals(uploadSign)){  
  FileItemFactory factory = new diskFileItemFactory();  
  ServletFileUpload upload = new ServletFileUpload(factory);  
  //upload.setHeaderEncoding("UTF-8");  
  try{  
      List items = upload.parseRequest(request);  
      if(null != items){  
          Iterator itr = items.iterator();  
          while(itr.hasNext()){  
              FileItem item = (FileItem)itr.next();  
              if(item.isFormField()){  
                  continue;  
              }else{  
                                        //以当前精确到秒的日期为上传文件文件名  
                  SimpleDateFormat sdf=new SimpleDateFormat("yyyyMMddkkmmss");  
                  String type = item.getName().split("\\.")[1];//获取文件类型  
                  File savedFile = new File(path,sdf.format(new Date())+"."+type);  
                  item.write(savedFile);  
              }  
          }  
      }  
  }catch(Exception e){  
      e.printstacktrace();  
  }  
 }  </span>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐