清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>
public File file; //与页面上的 input file 标签的name 一样 public String name; /** * 上传文件公共方法 * @param url 地址 * @param ext 后缀名 * @return 上传成功 */ public boolean file(String url,String ext) { response = getResponse(); InputStream input = null; long time = System.currentTimeMillis(); OutputStream os = null; try { System.out.println(name); SystemParameter systemParameter = (SystemParameter) getRequest() .getSession().getServletContext() .getAttribute("systemParameter"); String path = systemParameter.getFilePath() + url ; String houzui = name.substring(name.lastIndexOf("("), name.length()); if (houzui.equals("(空白)")) { name=name.substring(0, name.indexOf("(")); } if (name.equals("流程图")) { name="liuchen"; } // 检查文件是否存在 File f = new File(path, name+ ext); if (f.exists()) { System.out.println(f.getAbsolutePath()); System.out.println(f.getName()); String newName = path + name + "old_" + time + ext; System.out.println(newName); boolean is = f.renameTo(new File(newName)); if (is == false) { f.renameTo(new File(path + name + ext)); return false; } else { // 如果存在,在读一次改过文件的名字,如果新的名字不存在,就提示上传失败 File file = new File(newName); if (!file.exists()) { return false; } } } input = new FileInputStream(file); os = new FileOutputStream(f); byte[] by = new byte[1024]; int length = input.read(by); while (length != -1) { os.write(by, 0, length); length = input.read(by); } return true; } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } finally { try { if (input != null) input.close(); if (os != null) os.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }