<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    前臺(tái)使用SWFUpload:

    <%@ page  contentType="text/html;  charset=GBK"%>
    <%@ page import="javax.servlet.*"%>
    <%@ page import="javax.servlet.http.*"%>
    <%@ page import="com.yourcompany.util.*"%>
    <html>
    <head>
     <link href="js/default.css" rel="stylesheet" type="text/css" />
     <script type="text/javascript" src="js/swfupload.js"></script>
     <script type="text/javascript" src="js/handlers.js"></script>
       <script src="js/jquery.js" type="text/javascript"></script>
       <script type="text/javacript">
       function g(){
      $.ajax({
        url: 'upload2.jsp',
        date: {c: $('#c').val(), c: $('#c').val()},
        error: function() { alert"fail"},
        success: function(response) { ... }
        });
      }
       </script>
     <script type="text/javascript">

     var swfu;
      window.onload = function () {
      
       swfu = new SWFUpload({
        // Backend Settings
        upload_url: "upload2.jsp", // Relative to the SWF file
        post_params: {"product1": "1"},
            
            use_query_string:false,
        // File Upload Settings
        file_size_limit : "2048", // 2MB
        file_types : "*.jpg",
        file_types_description : "JPG Images",
        file_upload_limit : "0",

        // Event Handler Settings - these functions as defined in Handlers.js
        //  The handlers are not part of SWFUpload but are part of my website and control how
        //  my website reacts to the SWFUpload events.
        file_queue_error_handler : fileQueueError,
        file_dialog_complete_handler : fileDialogComplete,
        upload_progress_handler : uploadProgress,
        upload_start_handler : uploadStart,
        upload_error_handler : uploadError,
        upload_success_handler : uploadSuccess,
        upload_complete_handler : uploadComplete,

     


        // Flash Settings
        flash_url : "js/swfupload_f9.swf", // Relative to this file

        custom_settings : {
         upload_target : "divFileProgressContainer"
        },
        
        // Debug Settings
        debug: false
       });
      }

    function uploadStart(file) {
    var post_params = this.settings.post_params;
    post_params.product = document.getElementById("product").value;
    this.setPostParams(post_params);
    return true;
    }
     </script>
    </head>
      <div id="SWFUploadTarget">
    <body>

      <div>
       <form action="upload2.jsp" method="get">
        <button id="btnBrowse" type="button" style="padding: 5px;" onClick="swfu.selectFiles(); this.blur();"><img src="images/page_white_add.png" style="padding-right: 3px; vertical-align: bottom;">請(qǐng)選擇圖片<span style="font-size: 7pt;">(2 MB Max)</span></button>
                        請(qǐng)輸入產(chǎn)品ID<input type="text" name="product" id="product" value="">
       </form>
      </div>
      <div id="divFileProgressContainer" style="height: 75px;"></div>
      <div id="thumbnails"></div>
     </div>
    </body>
    <html>

    后臺(tái)使用SmartUpload:

    <%@ page contentType="text/html;charset=gb2312" language="java" import="java.io.*,java.awt.Image,java.awt.image.*,com.sun.image.codec.jpeg.*,
    java.sql.*,com.jspsmart.upload.*,java.util.*,com.yourcompany.util.*"%>
    <%
    SmartUpload mySmartUpload =new SmartUpload();
    long file_size_max=4000000;
    //add


    //初始化
     mySmartUpload.initialize(pageContext);
    //只允許上載此類(lèi)文件
    try {
    mySmartUpload.setAllowedFilesList("jpg,gif");
    //上載文件
    mySmartUpload.upload();
    } catch (Exception e){
    %>
      <SCRIPT language=javascript>
      alert("只允許上傳.jpg和.gif類(lèi)型圖片文件");
      window.location=''upfile.jsp'';
      </script>
    <%
    }
    //try{

        com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
        if (myFile.isMissing()){%>
       <SCRIPT language=javascript>
       alert("請(qǐng)先選擇要上傳的文件");
       window.location=''upfile.jsp'';
       </script>
        <%}
        else{
     
     String fileName2="",ext="",testvar="";
     String productname=mySmartUpload.getRequest().getParameter("product");
     String url="/uploadfile/"+productname+"/";      //應(yīng)保證在根目錄中有此目錄的存在


     java.io.File file1 = new java.io.File(request.getRealPath("/") + url );
       if(!file1.exists())
      {
       file1.mkdir();
      }


          //String myFileName=myFile.getFileName(); //取得上載的文件的文件名
       ext= myFile.getFileExt();      //取得后綴名
       int file_size=myFile.getSize();     //取得文件的大小 
       String saveurl="";
       if(file_size<file_size_max){

    int temp=1,temp2=0;
        String[] a=myFile.getFileName().split(".jpg");
        String myFileNameo = productname+"_00_pic_big";
     String myFileName = productname+"_0"+temp;
       
        Calendar calendar = Calendar.getInstance();
        String filename = String.valueOf(calendar.getTimeInMillis());
        saveurl=request.getRealPath("/")+url;
        saveurl+=myFileNameo+"."+ext;          //保存路徑
       

       
        myFile.saveAs(saveurl,mySmartUpload.SAVE_PHYSICAL);
      //  java.io.File  f1   =   new  java.io.File (saveurl);
      //  java.io.File    f2   =   new   java.io.File (request.getRealPath("/")+url+myFileName+"_0_big.jpg");  
      //  f1.renameTo(f2); 
        //out.print(filename);
    //-----------------------上傳完成,開(kāi)始生成縮略圖------------------------- 
     
     
     
     
     com.yourcompany.util.DirList dirlist = new com.pixel.util.DirList();
      String[] dir =dirlist.list(request.getRealPath("/") + url );


    for(int i=0;i<dir.length;i++){
      //for (String i : dir){
      String[] split = dir[i].split("\\.");
          if(split[1].equals("jpg")){  
          String[] split2=split[0].split("\\_");
           //split2[1]=01                
       if(Integer.parseInt(split2[1])>0&Integer.parseInt(split2[1])>=temp2){
       temp2=Integer.parseInt(split2[1])+1;
       }
       if(Integer.parseInt(split2[1])==0){
       temp2=1;
       }
         }

    if(temp2<=10){
    myFileName = productname+"_0"+temp2;
    }else{
    myFileName = productname+"_"+temp2;
    }

     

       
     //myFileName = mySmartUpload.getRequest().getParameter("product");
        java.io.File file = new java.io.File(saveurl);        //讀入剛才上傳的文件
        String newurl=request.getRealPath("/")+url+myFileName+"_70_min."+ext;  //新的縮略圖保存地址
        Image src = javax.imageio.ImageIO.read(file);                     //構(gòu)造Image對(duì)象
        float tagsize=70;
        int old_w=src.getWidth(null);                                     //得到源圖寬
        int old_h=src.getHeight(null);  
        int new_w=0;
        int new_h=0;                            //得到源圖長(zhǎng)
        int tempsize;
        float tempdouble;
        if(old_w>old_h){
         tempdouble=old_w/tagsize;
        }else{
         tempdouble=old_h/tagsize;
        }
        new_w=Math.round(old_w/tempdouble);
        new_h=Math.round(old_h/tempdouble);//計(jì)算新圖長(zhǎng)寬
        BufferedImage tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
        tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);       //繪制縮小后的圖
        FileOutputStream newimage=new FileOutputStream(newurl);          //輸出到文件流
        JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);      
        encoder.encode(tag);                                               //近JPEG編碼
         
                //讀入剛才上傳的文件
        newurl=request.getRealPath("/")+url+myFileName+"_130_min."+ext;  //新的縮略圖保存地址
        //Image src = javax.imageio.ImageIO.read(file);                     //構(gòu)造Image對(duì)象
        tagsize=130;
      //  int old_w2=src2.getWidth(null);                                     //得到源圖寬
      //  int old_h2=src2.getHeight(null);  
       // int new_w=0;
       // int new_h=0;                            //得到源圖長(zhǎng)
       // int tempsize;
      //  float tempdouble;
        if(old_w>old_h){
         tempdouble=old_w/tagsize;
        }else{
         tempdouble=old_h/tagsize;
        }
        new_w=Math.round(old_w/tempdouble);
        new_h=Math.round(old_h/tempdouble);//計(jì)算新圖長(zhǎng)寬
         tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
        tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);       //繪制縮小后的圖
        newimage=new FileOutputStream(newurl);          //輸出到文件流
        encoder = JPEGCodec.createJPEGEncoder(newimage);      
        encoder.encode(tag);                                               //近JPEG編碼
       
         newurl=request.getRealPath("/")+url+myFileName+"_180_min."+ext;  //新的縮略圖保存地址
        //Image src = javax.imageio.ImageIO.read(file);                     //構(gòu)造Image對(duì)象
        tagsize=180;
      //  int old_w2=src2.getWidth(null);                                     //得到源圖寬
      //  int old_h2=src2.getHeight(null);  
       // int new_w=0;
       // int new_h=0;                            //得到源圖長(zhǎng)
       // int tempsize;
      //  float tempdouble;
        if(old_w>old_h){
         tempdouble=old_w/tagsize;
        }else{
         tempdouble=old_h/tagsize;
        }
        new_w=Math.round(old_w/tempdouble);
        new_h=Math.round(old_h/tempdouble);//計(jì)算新圖長(zhǎng)寬
         tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
        tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);       //繪制縮小后的圖
        newimage=new FileOutputStream(newurl);          //輸出到文件流
        encoder = JPEGCodec.createJPEGEncoder(newimage);      
        encoder.encode(tag);                                               //近JPEG編碼

         newurl=request.getRealPath("/")+url+myFileName+"_500_min."+ext;  //新的縮略圖保存地址
        //Image src = javax.imageio.ImageIO.read(file);                     //構(gòu)造Image對(duì)象
        tagsize=500;
      //  int old_w2=src2.getWidth(null);                                     //得到源圖寬
      //  int old_h2=src2.getHeight(null);  
       // int new_w=0;
       // int new_h=0;                            //得到源圖長(zhǎng)
       // int tempsize;
      //  float tempdouble;
        if(old_w>old_h){
         tempdouble=old_w/tagsize;
        }else{
         tempdouble=old_h/tagsize;
        }
        new_w=Math.round(old_w/tempdouble);
        new_h=Math.round(old_h/tempdouble);//計(jì)算新圖長(zhǎng)寬
         tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
        tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);       //繪制縮小后的圖
        newimage=new FileOutputStream(newurl);          //輸出到文件流
        encoder = JPEGCodec.createJPEGEncoder(newimage);      
        encoder.encode(tag);                                               //近JPEG編碼

     newurl=request.getRealPath("/")+url+myFileName+"_800_min."+ext;  //新的縮略圖保存地址
        //Image src = javax.imageio.ImageIO.read(file);                     //構(gòu)造Image對(duì)象
        tagsize=800;
      //  int old_w2=src2.getWidth(null);                                     //得到源圖寬
      //  int old_h2=src2.getHeight(null);  
       // int new_w=0;
       // int new_h=0;                            //得到源圖長(zhǎng)
       // int tempsize;
      //  float tempdouble;
        if(old_w>old_h){
         tempdouble=old_w/tagsize;
        }else{
         tempdouble=old_h/tagsize;
        }
        new_w=Math.round(old_w/tempdouble);
        new_h=Math.round(old_h/tempdouble);//計(jì)算新圖長(zhǎng)寬
         tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
        tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);       //繪制縮小后的圖
        newimage=new FileOutputStream(newurl);          //輸出到文件流
        encoder = JPEGCodec.createJPEGEncoder(newimage);      
        encoder.encode(tag);                                               //近JPEG編碼
     
     
      newimage.close(); 

       }
       else{
        out.print("<SCRIPT language=''javascript''>");
        out.print("alert(''上傳文件大小不能超過(guò)"+(file_size_max/1000)+"K'');");
        out.print("window.location=''upfile.jsp;''");
        out.print("</SCRIPT>");
       }
      }
    //}catch (Exception e){

    //e.toString();

    //}
    %>



    其中:
    com.yourcompany.util.DirList dirlist = new com.yourcompany.DirList();
      String[] dir =dirlist.list(request.getRealPath("/") + url );


    for(int i=0;i<dir.length;i++){
      //for (String i : dir){
      String[] split = dir[i].split("\\.");
          if(split[1].equals("jpg")){  
          String[] split2=split[0].split("\\_");
           //split2[1]=01                
       if(Integer.parseInt(split2[1])>0&Integer.parseInt(split2[1])>=temp2){
       temp2=Integer.parseInt(split2[1])+1;
       }
       if(Integer.parseInt(split2[1])==0){
       temp2=1;
       }
         }

    if(temp2<=10){
    myFileName = productname+"_0"+temp2;
    }else{
    myFileName = productname+"_"+temp2;
    }


    這部分調(diào)用一個(gè)方法,讀取目錄里的文件名,并重新按照01、02、03的順序命名。
    獲取目錄里的文件名的類(lèi):

    import java.io.File;
    import java.io.FilenameFilter;
    import java.util.Arrays;
    import java.util.Comparator;
    import java.util.regex.Pattern;
    public class DirList {
     public String[] list(String thepath) {  
      File path = new File(thepath);  
      String[] list;  
      list = path.list();  
      Arrays.sort(list, new AlphabeticComparator());
      return list;
     }
    }

    class DirFilter implements FilenameFilter { 
     private Pattern pattern;  public DirFilter(String regex) {
      pattern = Pattern.compile(regex);  }
     public boolean accept(File dir, String name) {  
      // Strip path information, search for regex:  
      return pattern.matcher(new File(name).getName()).matches();
      }
     }

    class AlphabeticComparator implements Comparator {
     public int compare(Object o1, Object o2) {  
      String s1 = (String) o1;    String s2 = (String) o2;   
      return s1.toLowerCase().compareTo(s2.toLowerCase()); 
      }
     }

    posted on 2008-08-13 11:57 lzj520 閱讀(1324) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): 個(gè)人學(xué)習(xí)日記 、java api
    主站蜘蛛池模板: 国产免费久久精品99re丫y| 亚洲成a人片在线观看中文!!!| 黄色片在线免费观看| 人妻在线日韩免费视频| 色天使亚洲综合一区二区| 亚洲无成人网77777| 亚洲AV无码专区国产乱码电影| 免费国内精品久久久久影院| 国产大片线上免费观看| 一级毛片在线免费看| 中文在线免费不卡视频| 日本永久免费a∨在线视频| 亚洲乱亚洲乱妇无码| 亚洲一线产区二线产区精华| 亚洲专区在线视频| 亚洲AV无码不卡在线播放| 超清首页国产亚洲丝袜| 免费无遮挡无码永久在线观看视频| 国产免费av片在线看| 国产高清不卡免费在线| 曰批全过程免费视频播放网站| 久久青草免费91线频观看站街| 中文在线免费看视频| 国产在线观看免费av站| a级毛片免费观看在线| 日本视频免费观看| 污污污视频在线免费观看| 色九月亚洲综合网| 亚洲AV无码专区国产乱码不卡| 亚洲日韩一中文字暮| 亚洲精品成a人在线观看夫| 中文字幕在线日亚洲9| 亚洲精品伦理熟女国产一区二区| 亚洲中文字幕久久精品蜜桃 | 久久一区二区免费播放| 亚洲精品视频免费观看| 狠狠躁狠狠爱免费视频无码| 久久久久久国产a免费观看不卡| 99精品视频在线观看免费| 国产成人无码区免费内射一片色欲| 免费av片在线观看网站|