隨筆-47  評(píng)論-14  文章-0  trackbacks-0

          文件上傳在web應(yīng)用中非常普遍,要在jsp環(huán)境中實(shí)現(xiàn)文件上傳功能是非常容易的,因?yàn)榫W(wǎng)上有許多用java開(kāi)發(fā)的文件上傳組件,本文以commons-fileupload組件為例,為jsp應(yīng)用添加文件上傳功能。
          common-fileupload組件是apache的一個(gè)開(kāi)源項(xiàng)目之一,可以從    }
              OutputStream out = response.getOutputStream();
              while((len = br.read(buf)) >0)
                out.write(buf,0,len);
              br.close();
              out.close();
            } 

           

          smartUpload:
          上傳:在unix/linux系統(tǒng)上,如果上傳格式文檔,如Wrod,Excel等文檔,很多時(shí)候打開(kāi)文檔出錯(cuò)。

          原因:EOF處理沒(méi)有判斷。

          下載:更不用說(shuō)了,基本上都會(huì)出錯(cuò),下載時(shí)會(huì)比原文件多出N多個(gè)字節(jié)。你看看它自帶的例子就知道了。下載時(shí)一定要這樣寫(xiě):

          <%@page xxxxxx%><%
          smartUpload smu= ............

          如果前面有共它任何指令語(yǔ)句或動(dòng)作語(yǔ)句寫(xiě)在多行而沒(méi)有在一行(有病啊,我要是inclide n多個(gè)文件都不能分行),那下載的文件肯定有問(wèn)題。

          原因:jsp在編譯時(shí)默認(rèn)了文檔類型并有默認(rèn)輸出,而smartUpload在輸出要下載的文檔之前沒(méi)有清空。 
          posted on 2005-09-08 17:26 Stephen 閱讀(507) 評(píng)論(0)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 临武县| 阿城市| 达州市| 徐水县| 华安县| 科技| 太康县| 会泽县| 乌拉特中旗| 青神县| 泾川县| 壶关县| 江源县| 乌拉特前旗| 营山县| 沙洋县| 班戈县| 岗巴县| 汝南县| 嘉兴市| 迁西县| 灵川县| 沂南县| 鲜城| 威信县| 海宁市| 汉源县| 无锡市| 遵义市| 吉木萨尔县| 四会市| 沙湾县| 玉环县| 阳东县| 洛南县| 富宁县| 师宗县| 黔西县| 巴中市| 博罗县| 永康市|