日期:2014-05-19 浏览次数:20662 次
url:'../../server/upload/jsp/imageUp.jsp',
//保存文件路径 String filePath = "ueditor/server/upload/uploadimages"; String realPath = request.getRealPath("/") + filePath; String newFileName = ""; //判断路径是否存在,不存在则创建 File dir = new File(realPath); if(!dir.isDirectory()) dir.mkdir(); if(ServletFileUpload.isMultipartContent(request)){ DiskFileItemFactory dff = new DiskFileItemFactory(); dff.setRepository(dir); dff.setSizeThreshold(1024000); ServletFileUpload sfu = new ServletFileUpload(dff); FileItemIterator fii = sfu.getItemIterator(request); String title = ""; //图片标题 String url = ""; //图片地址 String fileName = ""; String state="SUCCESS"; while(fii.hasNext()){ FileItemStream fis = fii.next(); try{ if(!fis.isFormField() && fis.getName().length()>0){ fileName = fis.getName(); Pattern reg=Pattern.compile("[.]jpg|png|jpeg|gif$"); Matcher matcher=reg.matcher(fileName); if(!matcher.find()) { state = "文件类型不允许!"; break; } newFileName = new Date().getTime()+fileName.substring(fileName.lastIndexOf("."),fileName.length()); url = realPath+"/"+ newFileName; BufferedInputStream in = new BufferedInputStream(fis.openStream());//获得文件输入流 FileOutputStream a = new FileOutputStream(new File(url)); BufferedOutputStream output = new BufferedOutputStream(a); Streams.copy(in, output, true);//开始把文件写到你指定的上传文件夹 }else{ String fname = fis.getFieldName(); if(fname.indexOf("pictitle")!=-1){ BufferedInputStream in = new BufferedInputStream(fis.openStream()); byte c [] = new byte[10]; int n = 0; while((n=in.read(c))!=-1){ title = new String(c,0,n); break; } } } }catch(Exception e){ e.printStackTrace(); } } title = title.replace("&", "&").replace("'", "&qpos;").replace("\"", """).replace("<", "<").replace(">", ">"); response.getWriter().print("{'url':'uploadimages/"+newFileName+"','title':'"+title+"','state':'"+state+"'}"); }