標籤:
首先到引入兩個jar包,分別是
commons-fileupload-1.3.1.jar
commons-io-2.4.jar
index.jsp
<form action="<%=path %>/test.jsp" method="post" enctype="multipart/form-data"> <p>檔案名稱:<input type="text" name="username"></p> <p> 選擇圖片:<input type="file" name="nfile"></p> <p><input type="submit" value="提交"></p> </form>
test.jsp
<%request.setCharacterEncoding("utf-8"); boolean flag =ServletFileUpload.isMultipartContent(request);if(flag){ DiskFileItemFactory factory =new DiskFileItemFactory(); ServletFileUpload upload =new ServletFileUpload(factory); List<FileItem> filelist =upload.parseRequest(request); Iterator<FileItem> myitor =filelist.iterator(); while(myitor.hasNext()){ FileItem item =myitor.next(); if(item!=null){ if(item.isFormField()){ //證明是普通表單欄位 返回表單欄位的name屬性值 String name=item.getFieldName(); if(name.equals("username")){ out.print(item.getString("utf-8")); } }else{ String filename =item.getName(); String path ="WEB-INF/upload/"; //相對路徑 //就是講相對路徑轉化成絕對路徑 String absolutePath =this.getServletContext().getRealPath(path); File file =new File(filename); File uploadFile =new File(absolutePath,file.getName()); item.write(uploadFile); out.print("上傳成功!"+filename); } } }}%>
實現檔案上傳