Extjs 文件上传详解编程语言

function fromExcel(){ 
    var dxjgdm_sel = Ext.get("dxjgdm").getValue(); 
    var dxjglx_sel = Ext.get("dxjglx").getValue(); 
 
   var form = new Ext.form.FormPanel({ 
     baseCls : 'x-plain', 
     labelWidth : 150, 
     fileUpload : true, 
     defaultType : 'textfield', 
     items : [{ 
        xtype : 'textfield', 
        fieldLabel : '请选择要导入的Excel文件', 
        name : 'userfile', 
        id : 'userfile', 
        inputType : 'file', 
        blankText : 'File can/'t not empty.', 
        anchor : '100%' // anchor width by percentage 
       }] 
    }); 
 
    var win = new Ext.Window({ 
         title : 'Excel导入', 
         width : 400, 
         height : 150, 
         minWidth : 300, 
         minHeight : 100, 
         layout : 'fit', 
         plain : true, 
         bodyStyle : 'padding:5px;', 
         buttonAlign : 'center', 
         items : form, 
         buttons : [{ 
                 text : '导入', 
                 handler : function() { 
                   if (form.form.isValid()) { 
                        if(Ext.getCmp('userfile').getValue() == ''){ 
                             Ext.Msg.alert('错误','请选择你的文件'); 
                             return; 
                          } 
                        Ext.MessageBox.show({ 
                               title : '请等待', 
                               msg : 'Excel正在导入...', 
                               progressText : '', 
                               width : 300, 
                               progress : true, 
                               closable : false, 
                               animEl : 'loding' 
                          }); 
                        form.getForm().submit({ 
                             url : 'ywcs_dxjgxx.app?dateTime=' + new Date().getTime()+ '&subTranCode=list&dxjgdm_sel='+dxjgdm_sel+'&fromexcel_sel=true&dxjglx_sel='+dxjglx_sel, 
                             method : 'POST', 
                             success : function(form, action) { 
                                  Ext.Msg.alert("系统提示", "文件上传成功!"); 
                                  win.close(); 
                             }, 
                             failure : function() { 
                                  Ext.Msg.alert("系统提示", "文件上传失败!(上传文件类型不对或文件过大)"); 
                             } 
                        }) 
                       }else{ 
                           Ext.Msg.alert("系统提示","请选择文件后再上传!"); 
                       } 
                  } 
             }, { 
                  text : '关闭', 
                  handler : function() { 
                       win.close(); 
                  } 
             }] 
        }); 
        win.show(); 
  
     
     
}
private void fromExcel() throws IOException, HsException { 
        // TODO Auto-generated method stub 
         
        FileItemFactory factory = new DiskFileItemFactory();  
           ServletFileUpload fileload = new ServletFileUpload(factory);  
          
           fileload.setSizeMax(4194304);  
           boolean is_excel = false; 
            
           try {  
               System.out.println(request); 
               List<FileItem> fileItems = (List<FileItem>) fileload.parseRequest(request);  
               Iterator<FileItem> iter = fileItems.iterator(); // 依次处理每个上传的文件 
               while (iter.hasNext()) {  
                   FileItem item = (FileItem) iter.next();// 忽略其他不是文件域的所有表单信息  
                   if (!item.isFormField()) {  
                       String name = item.getName();//获取上传文件名,包括路径  
                       System.out.println(name);  
                       String file_type = name.split("//.")[1]; 
                       if(file_type.equals("xls") || file_type.equals("xlsx")){ 
                           is_excel = true; 
                       }else{ 
                           is_excel = false; 
                           System.out.println("上传文件类型不对"); 
                           AjaxTools.exAjax("{success:false}", response); 
                           return; 
                       } 
                        
                       if (name != null && is_excel) {  
                           File filetoserver = new File("D://", name);  
          
                           item.write(filetoserver);  
          
                           System.out.println("文件:" + name + "上传成功,大小是" + item.getSize());  
                           AjaxTools.exAjax("{success:true}", response); 
                           return; 
                       }  
                   }  
               } 
           } catch (Exception e) {  
           }  
    }

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/industrynews/13238.html

(0)
上一篇 2021年7月19日 15:36
下一篇 2021年7月19日 15:36

相关推荐

发表回复

登录后才能评论