資源描述:
《jspservlet實現(xiàn)文件上傳與下載》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、1.Jsp/Servlet:實現(xiàn)文件上傳與下載標簽:uploadfilerandomservletdownloadjsp2012-05-1411:18315人閱讀評論(0)收藏舉報ThisdocshowshowtouploadanddownloadfileswithJsp&Servlettechnology.author:ZJ?07-3-7Blog:?[url]http://zhangjunhd.blog.51cto.com/[/url]1.客戶端上傳文件客戶端通過一個Jsp頁面,上傳文件到服務器,該Jsp頁面必須含有File類表單,并
2、且表單必須設置enctype="multipart/form-data"。提交表單時通過內置對象request,request.getInputStream();方法獲得一個輸入流。在上傳文件時,會有附加信息,如下所示:-----------------------------7d71042a40328Content-Disposition:form-data;name="fileforload";filename="C:DocumentsandSettingsZJ桌面book.txt"Content-Type:text/pla
3、in//此處為文件內容-----------------------------7d71042a40328Content-Disposition:form-data;name="submit"?commit-----------------------------7d71042a40328--附加信息大小為297字節(jié)(不確定這個值,測試得到),可通過request.getContentLength()>297來判斷是否上傳了文件還是提交空字符串。2.測試fileupload.jsp負責提交文件,accept.jsp負責實現(xiàn)上傳功能。fi
4、leupload.jsp
??
??
ThispageforFileUpload??
Choosethefileforuploading:??
?accept.jsp<%@?page?language="java"?import="java.io.*"?%>
Thispageforresponse6、
????<%????try?{???????if?(request.getContentLength()>297){???????????InputStreamin=request.getInputStream();???????????Filef=?new?File("d:/temp",?"test.txt");???????????FileOutputStreamo=?new?FileOutputStream(f);???????????byte?b[]=?new?byte[1024];??????????
7、?int?n;???????????while?((n=in.read(b))!=-1){???????????????o.write(b,0,n);???????????}???????????o.close();???????????in.close();???????????out.print("Fileuploadsuccess!");???????????}?else?{??????????????out.print("Nofile!");???????????}???????}?catch?(IOExceptione){??
8、?????????out.print("uploaderror.");???????????e.printStackTrace();???????}????%>?????服務器端