Dict.CN 在線詞典, 英語學(xué)習(xí), 在線翻譯

          都市淘沙者

          荔枝FM Everyone can be host

          統(tǒng)計

          留言簿(23)

          積分與排名

          優(yōu)秀學(xué)習(xí)網(wǎng)站

          友情連接

          閱讀排行榜

          評論排行榜

          用cos進(jìn)行文件上傳

          ??在jsp中實(shí)現(xiàn)文件上傳,可用的類庫很多,比如有著名的jspsmart公司SmartUpload,struts里面也有。我這里說說cos,它是O'Reilly公司的,O'Reilly的圖書是很不錯的,這個上傳的組件也做得很棒,最重要的是,它是open?source的。

          下載最新的cos包(http://www.servlets.com/cos/index.html),加入到你的classpath中。


          ????編寫一個需要上傳文件的jsp,為了方便,我就用一個簡單的htm文件了,在這個頁面中,我們讓用戶一次可以上傳3個文件。?
          /////////////////////upload.htm////////////////////////////////////
          <!DOCTYPE?HTML?PUBLIC?"-//W3C//DTD?HTML?4.01?Transitional//EN"
          "http://www.w3.org/TR/html4/loose.dtd">
          <html>
          <head>
          <meta?http-equiv="Content-Type"?content="text/html;charset=gb2312">
          <title>無標(biāo)題文檔</title>
          </head>

          <body>
          <!--?enctype的值很重要,upload.jsp為處理上傳的jsp-->
          <form?name="form1"??method="post"?enctype="multipart/form-data"?
          action="upload.jsp">
          <p>
          ??<input?name="file1"?type="file">
          </p>
          <p>
          ??<input?name="file2"?type="file">
          </p>
          <p>??<input?name="file3"?type="file">
          </p>
          <p>
          ??<input?type="submit"?name="Submit"?value="上傳">
          </p>
          </form?>

          </body>
          </html>

          在c:\下建一個目錄c:\upload,用來存放上傳的文件。


          寫一個jsp或者servlet來實(shí)現(xiàn)上傳,我這里用一個叫upload.jsp,這樣就不用配置web.xml,呵呵,比較懶的說。?
          ////////////////////////////upload.jsp////////////////////////

          <%@page?import="java.io.*"%>
          <%@page?import="com.oreilly.servlet.MultipartRequest"%>
          <%@page?import="com.oreilly.servlet.multipart.CoverFileRenamePolicy"%>
          <%@page?contentType="text/html;?charset=gb2312"?%>
          <%
          //文件上傳后,保存在c:\\upload
          String?saveDirectory?="c:\\upload";
          //每個文件最大5m,最多3個文件,所以...
          int?maxPostSize?=3?*?5?*?1024?*?1024?;
          //response的編碼為"gb2312",同時采用缺省的文件名沖突解決策略,實(shí)現(xiàn)上傳
          MultipartRequest?multi?=
          ???????new?MultipartRequest(request,?saveDirectory,?maxPostSize,
          ????????????????????????????"gb2312");

          //輸出反饋信息
          ?Enumeration?files?=?multi.getFileNames();
          ?????while?(files.hasMoreElements())?{
          ????????System.err.println("ccc");
          ???????String?name?=?(String)files.nextElement();
          ???????File?f?=?multi.getFile(name);
          ???????if(f!=null){
          ?????????String?fileName?=?multi.getFilesystemName(name);
          ?????????String?lastFileName=?saveDirectory+"\\"?+?fileName;
          ?????????out.println("上傳的文件:"+lastFileName);
          ?????????out.println("<hr>");

          ???????}
          ?????}

          %>
          <meta?http-equiv="Content-Type"?content="text/html;charset=gb2312">
          ????最后把這2個文件發(fā)布到你的服務(wù)器就行了。上傳文件就搞定啦,以后你想在你郵件系統(tǒng)里面嵌入發(fā)送附件的功能,用這個來做上傳也不錯啊。?
          最后,希望這篇文章對你有所啟發(fā),如有錯誤,敬請批評指正!

          posted on 2006-04-27 08:35 都市淘沙者 閱讀(966) 評論(1)  編輯  收藏 所屬分類: JSP/PHP

          評論

          # re: 用cos進(jìn)行文件上傳 2014-01-27 15:37 頂頂頂頂

          第三方反反復(fù)復(fù)反反復(fù)復(fù)反反復(fù)復(fù)反反復(fù)復(fù)反復(fù)  回復(fù)  更多評論   

          主站蜘蛛池模板: 刚察县| 福建省| 新和县| 乌苏市| 莎车县| 商城县| 肥东县| 昭平县| 西安市| 扎赉特旗| 巩留县| 阜新市| 西林县| 竹北市| 庆元县| 武陟县| 阿图什市| 丰台区| 金平| 和硕县| 会理县| 平乐县| 长岛县| 桦甸市| 永寿县| 安乡县| 博兴县| 沁水县| 江门市| 武宁县| 荃湾区| 台前县| 馆陶县| 烟台市| 屏东县| 仪征市| 栖霞市| 鹰潭市| 芦溪县| 上思县| 浦县|