免費HTTP上傳文件控件WebUploadFile.ocx發布,讓實現Word在線編輯器變得容易


原理winsock模擬表單上傳數據,這樣一般的上傳接收組件都可以接收,如我們常用的 upload.asp,java的upload.do等

 

特點:

支持多文件帶表單參數設定同時上傳。

 

下載地址

http://www.vdisk.cn/down/index/3832662A5292/WebUploadFile.ocx.html

 

使用圖

 

 

上圖是配置服務器接收的請求,大家應該看得懂吧。

 

客戶端ocx使用方法,如果在vb,vc等工程調用的話,可以象上圖一樣在屬性頁設置。

 

1)指定上傳服務器各項參數,以下參數靈活設置

        WebUpload.Host = "192.168.0.x"
        WebUpload.Port = "8080"
        WebUpload.Path = "/abc/upload" 
2)上傳指定文件(一個文件)

        WebUpload.UploadAllFile "c:/3.jpg"  

3)上傳多文件     
        WebUpload.AppendUploadFile "c:/1.jpg","c:/1.jpg"
        WebUpload.AppendUploadFile "c:/2.jpg","c:/2.jpg"
        WebUpload.AppendUploadFile "c:/3.jpg","c:/3.jpg"

        WebUpload.UploadAllFile

4)上傳文件時同時帶參數
        WebUpload.AppendFormData "name", "張三"

        WebUpload.AppendFormData "name2", "李四" 

 

注冊ocx后,html調用代碼

<HTML><BODY><OBJECT classid="clsid:27A3B5CD-80DA-45F3-93F9-44C7DD631DF8"></OBJECT></BODY></HTML>

 

 

附:java接收的實現片斷,asp等接收類似,因為就是表單上傳和接收的模式,說白了就是現在你用的上傳接收方式不用變化,直接用。

不懂寫的上網搜索一下就有了。

 

import org.apache.commons.fileupload.DiskFileUpload;

 

......

 

     DiskFileUpload fu = new DiskFileUpload();
     // 設置允許用戶上傳文件大小,單位:字節
     fu.setSizeMax(fc.getFile_max_size());
     // 設置最多只允許在內存中存儲的數據,單位:字節
     fu.setSizeThreshold(fc.getFile_max_memory());
     // 設置一旦文件大小超過getSizeThreshold()的值時數據存放在硬盤的目錄
     fu.setRepositoryPath(FILE_TEMP_DIR);
     //開始讀取上傳信息
     List fileItems = fu.parseRequest(request);
     // 依次處理每個上傳的文件
     Iterator iter = fileItems.iterator();

     HashMap map = new HashMap();

     while (iter.hasNext()) {
         item = (FileItem)iter.next();
         if (item.isFormField()) {
          //處理表單域中其他不是文件域的信息
             String fieldSubName = item.getFieldName();
             map.put(fieldSubName,new String(item.getString("GBK")));
         }//end if
      }//end while

 

   

    iter = fileItems.iterator();
    while (iter.hasNext()) {
        item = (FileItem)iter.next();

        //忽略其他不是文件域的所有表單信息 tmp_ian = 文件分隔符
        if (!item.isFormField()) {

               String name = item.getName();

               item.write(new File(FILE_DIR+tmp_ian+ name ));
        }

    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM