有關servlet的代碼如下:
public class fileServlet extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// InputStream in=request.getInputStream();
// String string=IOUtils.toString(in);
// System.out.println(string);
DiskFileItemFactory factory=new DiskFileItemFactory();//建立工廠
ServletFileUpload fileUpload=new ServletFileUpload(factory);//得到工廠的解析器
try {
List<FileItem> FileItems=fileUpload.parseRequest(request);//通過傳入一個request對象得到fileupload的list對象
FileItem fileItem=FileItems.get(0);//得到第一個fileitem對象的
System.out.println("屬性的名字為:"+fileItem.getName()+" 值為:"+fileItem.getString("UTF-8"));//得到第一個屬性的名字和傳入的值
//輸出為: 屬性的名字為:null 值為:愛你哦
FileItem fileItem2=FileItems.get(1);//得到第二個fileItem對象
System.out.println("檔案的名稱:"+fileItem2.getName()+" 檔案的類型:"+fileItem2.getContentType());//擷取檔案的名稱,以及擷取檔案的類型
//輸出為: 檔案的名稱:愛你哦 檔案的類型:image/jpeg
File file=new File("D://destiny.jpg");//建立該檔案的對象
try {
fileItem2.write(file);//将檔案儲存到了d盤下名字為destiny的圖檔
} catch (Exception e) {
throw new RuntimeException(e);
}//輸出到該檔案對象中
} catch (FileUploadException e) {
throw new RuntimeException(e);
}//
}jsp的代碼如下:
<body>
<form action="<c:url value='/fileServlet' />" method="post" enctype="multipart/form-data">
姓名:<input type="text" name="name" /><br/>
照片:<input type="file" name="file"/><br/>
<input type="submit" value="送出" />
</form>
</body>