servlet中测试成功:
java 代码
- String filesystempath = request.getSession().getServletContext().getRealPath("/");
- ServletRequestContext srcontext = new ServletRequestContext(request);
- System.out.println(srcontext.getCharacterEncoding());
- System.out.println(srcontext.getContentType());
- boolean isMultipart = ServletFileUpload.isMultipartContent(request);
- if (isMultipart) {
- ServletFileUpload upload = new ServletFileUpload();
- try {
- //Parse the request
- FileItemIterator iter = upload.getItemIterator(request);
- while (iter.hasNext()) {
- FileItemStream item = iter.next();
- //System.out.println(item.getContentType());
- InputStream stream = item.openStream();
- if (item.isFormField()) {
- //这里处理form中的其它表单域内容
- } else {
- //这里处理上传对象
- String clientrealpath = item.getName();
- clientrealpath = clientrealpath.replace("\\", "\\\\");
- //System.out.println(clientrealpath);
- String filename = StringHelper.getFileName(clientrealpath);
- //System.out.println(filesystempath+filename);
- File newfile = new File(filesystempath+filename);
- OutputStream os =new FileOutputStream(newfile);
- byte[] b = new byte[8192];
- int len;
- while ((len = stream.read(b)) != -1) {
- os.write(b, 0, len);
- os.flush();
- os.close();
- stream.close();
- // Process the input stream
- }
- }
- } catch (FileUploadException e) {
- e.printStackTrace();
- }
- }