代碼
DiskFileItemFactory diskFileItemFactory = new DiskF ileItem正在講話就愛玩征途
// 2、創建一個核心的解析類
ServletFileUpload fileUpload = new ServletFileUpload( diskFileItemFactory);
fileUpload. setHeaderEncoding("UTF-8");
// 3、利用核心類解析Request,解析后會得到多個部分,返回一個List集合,裝的是每個部分的內容
List<FileItem> list = fileUpload. parseRequest(request);
// 4、 遍歷List集合,會得到代表每個部分的文件項的對象,根據文件項判斷是否是文件上傳項
for(FileItem fileItem : list) {
/ /判斷這個文件項是否是普通項,還是文件上傳項
if(fileItem. isFormField()) {
/ /普通項
/ /接收普通項的值
String name = fileItem. getF ieldName();/ /獲取普通項的名稱
/ /獲取普通項的值
String value = fileItem. getString("UTF-8");
System. out . println(name + ":" + value);
}else {
//文件上傳項
/ /獲取文件上傳項的文件的名稱
String filename = fileItem. getName();
/ /獲取文件上傳項的文件的數據
InputStream is = fileItem. getInputStream();
/ /獲取文件上傳的路徑:磁盤絕對路徑
String realPath = getServletContext(). getRealPath("/upload");
//創建一個輸出流, 寫入到設置的路徑中
OutputStream os = new FileOutputStream(realPath + "/" + filename);
}
} catch (FileUploadException e) {
// TODO Auto-generated catch block
e. printStackTrace();
}