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

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

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

    JSP/JAVA

    JAVA SERVER PAGES

    ASP無組件上傳(經過測試,網絡轉載)

     

    <%@ language="javascript"%>
    <%
    var self = Request.serverVariables("SCRIPT_NAME");
    if (Request.serverVariables("REQUEST_METHOD")=="POST")
    {
            var oo = new uploadFile();
            oo.path = "myFile";                        //存放路徑,為空表示當前路徑,默認為uploadFile
            oo.named = "file";                        //命名方式,date表示用日期來命名,file表示用文件名本身,默認為file
            oo.ext = "all";                                //允許上傳的擴展名,all表示都允許,默認為all
            oo.over = true;                                //當存在相同文件名時是否覆蓋,默認為false
            oo.size = 1*1024*1024;                //最大字節數限制,默認為1G
            oo.upload();
            Response.write('<script type="text/javascript">location.replace("'+self+'")</script>');
    }

    //ASP無組件上傳類
    function uploadFile()
    {
        var bLen  = Request.totalBytes;
        var bText = Request.binaryRead(bLen);
        var oo = Server.createObject("ADODB.Stream");
        oo.mode = 3;
            this.path = "uploadFile";
            this.named = "file";
            this.ext = "all";
            this.over = false;
            this.size = 1*1024*1024*1024;        //1GB

            //文件上傳       
            this.upload = function ()
            {
                    var o = this.getInfo();
                    if (o.size>this.size)
                    {
                            alert("文件過大,不能上傳!");
                            return;               
                    }
                    var f = this.getFileName();
                    var ext = f.replace(/^.+\./,"");
                    if (this.ext!="all"&&!new RegExp(this.ext.replace(/,/g,"|"),"ig").test(ext))
                    {
                            alert("目前暫不支持擴展名為 "+ext+" 的文件上傳!");
                            return;
                    }
                    if (this.named=="date")
                    {
                            f = new Date().toLocaleString().replace(/\D/g,"") + "." + ext;
                    }

                    oo.open();
                    oo.type = 1;
                    oo.write(o.bin);
                    this.path = this.path.replace(/[^\/\\]$/,"$&/");
                    var fso = Server.createObject("Scripting.FileSystemObject");
                    if(this.path!=""&&!fso.folderExists(Server.mapPath(this.path)))
                    {
                            fso.createFolder(Server.mapPath(this.path));
                    }
                    try
                    {
                            oo.saveToFile(Server.mapPath(this.path+f),this.over?2:1);
                            alert("上傳成功!");
                    }
                    catch(e)
                    {
                            alert("對不起,此文件已存在!");
                    }
                    oo.close();
                    delete(oo);

            }

            //獲取二進制和文件字節數
            this.getInfo = function ()
            {
                    oo.open();
                    oo.type=1;
                    oo.write(bText);
                    oo.position = 0;                               
                    oo.type=2;
                    oo.charset="unicode";
                    var gbCode=escape(oo.readText()).replace(/%u(..)(..)/g,"%$2%$1");
                    var sPos=gbCode.indexOf("%0D%0A%0D%0A")+12;
                    var sLength=bLen-(gbCode.substring(0,gbCode.indexOf("%0D%0A")).length/3)-sPos/3-6;
                    oo.close();
           
                    oo.open();
                    oo.type = 1;       
                    oo.write(bText);
                    oo.position=sPos/3;
                    var bFile=oo.read(sLength);
                    oo.close();
                   
                    return { bin:bFile, size:sLength };
            }

            //獲取文件名       
            this.getFileName = function ()
            {
                    oo.open();
                    oo.type = 2;
                    oo.writeText(bText);
                    oo.position = 0;
                    oo.charset = "gb2312";
                    var fileName = oo.readText().match(/filename=\"(.+?)\"/i)[1].split("\\").slice(-1)[0];
                    oo.close();
                    return fileName;
            }
           
            function alert(msg)
            {
                    Response.write('<script type="text/javascript">alert("'+msg+'");</script>');
            }
    }
    %>
    <html>
    <head>
      <title>ASP無組件上傳類</title>
      <meta http-equiv="content-Type" content="text/html; charset=gb2312">
    </head>
    <body>
      <form action="<%=self%>" method="post" enctype="multipart/form-data" onSubmit="return (this.upFile.value!='');">
        <input type="file" name="upFile"/>
        <input type="submit" value="上傳文件"/>
      </form>
    </body>
    </html>

    posted on 2009-06-26 17:55 C雞雞 閱讀(132) 評論(0)  編輯  收藏 所屬分類: Other


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    My Links

    Blog Stats

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    友情鏈接

    學習網站

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 成人免费a级毛片无码网站入口 | 亚洲精品视频在线看| 青青青国产在线观看免费| 午夜精品免费在线观看| 99re8这里有精品热视频免费| 亚洲精品视频免费观看| 成年免费a级毛片| 一级全免费视频播放| 七次郎成人免费线路视频| 国产精品免费看久久久香蕉| 一个人看的免费高清视频日本| 色多多www视频在线观看免费| 白白色免费在线视频| 美女视频黄.免费网址| 免费的黄色网页在线免费观看| 丁香六月婷婷精品免费观看| 和老外3p爽粗大免费视频| a毛片免费全部在线播放**| 亚洲免费观看视频| 人妻无码久久一区二区三区免费| 免费无码成人AV在线播放不卡| 日韩免费高清大片在线| 99久久国产热无码精品免费| 毛片免费在线视频| 国产又黄又爽又猛的免费视频播放| 国产免费黄色大片| 中国亚洲女人69内射少妇| 亚洲gv白嫩小受在线观看| 久久亚洲AV成人无码电影| 亚洲人和日本人jizz| 亚洲精品乱码久久久久久V | 亚洲成AV人片一区二区| 久久亚洲精品国产精品| 日本亚洲免费无线码 | 亚洲精品国产成人中文| 亚洲日韩精品无码AV海量| 免费一级做a爰片久久毛片潮| 香蕉免费看一区二区三区| 三年片在线观看免费观看大全一| 免费三级毛片电影片| 又色又污又黄无遮挡的免费视|