小菜毛毛技術(shù)分享

          與大家共同成長

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            164 Posts :: 141 Stories :: 94 Comments :: 0 Trackbacks
          要實現(xiàn)文件上載,我們必須先了解上載文件的HTTP請求。下面這個簡單的應(yīng)用示范了如何上載文件以及把HTTP請求的原始數(shù)據(jù)寫入文件。用文本編輯器查看該文件即可了解請求的格式,在此基礎(chǔ)上我們就可以提取出上載文件的名字、文件內(nèi)容以及原本混合在一起的其他信息。 

          在這里我們寫一個簡單的html頁面up.html,提供一個表單,用戶從這里選擇文件并把文件上載到服務(wù)器。 

          <html> 

          <head> 

          <title>文件上載</title> 

          </head> 

          <body> 

          <form action="upjsp.jsp" enctype="MULTIPART/FORM-DATA" method=post> 

          <br /> 

          公司: <input type="text" name="company" /> 

          <br /> 

          選擇要上載的文件 <input type="file" name="filename" /> 

          <br /> 

          <input type="submit" value="上載" /> 

          </form> 

          </body> 

          </html> 

          注意,<form>標記有一個enctype屬性,屬性值是"MULTIPART/FORM-DATA"。還有個type為file的輸入框是用來選擇上傳文件的。 

          表單的action屬性值是upjsp.jsp,這是將請求發(fā)送給upjsp.jsp文件。upjsp.jsp調(diào)用了名為UpBean的JavaBean。 

          程序如下: 

          <jsp:useBean id="TheBean" scope="page" class="UpBean " /> 

          <% 

          TheBean.doUpload(request); 

          %> 



            下面是UpBean的實現(xiàn)代碼: 

          import java.io.*; 

          import javax.servlet.http.HttpServletRequest; 

          import javax.servlet.http.HttpServletResponse; 

          import javax.servlet.ServletInputStream; 



          public class UpBean { 



          public void doUpload(HttpServletRequest request) throws 

          IOException { 

          PrintWriter pw = new PrintWriter( 

          new BufferedWriter(new FileWriter("test.txt"))); 

          ServletInputStream in = request.getInputStream(); 



          int i = in.read(); 

          while (i != -1) { 

          pw.print((char) i); 

          i = in.read(); 



          pw.close(); 





          這個JavaBean把HttpServletRequest對象的表單原始數(shù)據(jù)寫入test.txt文件. 

          選擇上傳一個文本或者網(wǎng)頁文件。點擊“上載”按鈕之后,表單就發(fā)送給了upjsp.jsp文件,一起發(fā)送的還有上傳的文件。upjsp.jsp文件不會向瀏覽器發(fā)送任何應(yīng)答內(nèi)容,但它會生成一個test.txt文件。打開test.txt文件,我們可以看到上傳文件的內(nèi)容和一些上傳的信息了。 
          null
          posted on 2010-01-19 17:33 小菜毛毛 閱讀(500) 評論(0)  編輯  收藏 所屬分類: J2EE相關(guān)技術(shù)與框架
          主站蜘蛛池模板: 获嘉县| 郯城县| 镇安县| 肥东县| 阜宁县| 类乌齐县| 邹平县| 曲麻莱县| 建水县| 镇原县| 绥中县| 东兴市| 江门市| 黎平县| 黄骅市| 安新县| 清河县| 共和县| 泸定县| 齐河县| 乐清市| 大埔区| 彝良县| 德兴市| 博客| 色达县| 兴化市| 澄城县| 安乡县| 西贡区| 舞钢市| 阿尔山市| 韶山市| 元江| 永丰县| 原阳县| 镇康县| 西吉县| 阿拉尔市| 沈阳市| 绥芬河市|