話不多說,請看代碼
/*** 文件上傳--單文件* * @param request* @param response* @param path* 文件存放路徑(path為WebApp/后面的內容)* @return*/public final static String fileUpload(HttpServletRequest request,HttpServletResponse response, String path) {MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();MultipartFile mFile = null;for (Iterator<?> i = fileMap.keySet().iterator(); i.hasNext();) {Object obj = i.next();mFile = (MultipartFile) fileMap.get(obj);}String filePath = "";SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");try {// 得到上傳的文件的文件名String filename = mFile.getOriginalFilename();// 獲取文件后綴名if (filename != null && !("").equals(filename)) {String fileExt = filename.substring(filename.lastIndexOf("."));// 按時間格式重新生成文件名String newFileName = sdf.format(new Date())+ (int) (Math.random() * 100) + fileExt;filePath = path + "/" + newFileName;// 得到上傳服務器的物理路徑path = request.getSession().getServletContext().getRealPath("http://" + path);// 文件流寫到服務器端File saveFile = new File(path, newFileName);FileCopyUtils.copy(mFile.getBytes(), saveFile);}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}return filePath;}/*** 文件上傳--多文件* * @param request* @param response* @param filePaths* (fileinputId,WebApp/后面的內容)* @return*/public final static Map<String, Object> fileUploads(HttpServletRequest request, HttpServletResponse response,String path) {MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();Map<String, Object> filePaths = new HashMap<String, Object>();// 得到上傳服務器的物理路徑String fileUrl = request.getSession().getServletContext().getRealPath("http://" + path);for (Iterator<?> i = fileMap.keySet().iterator(); i.hasNext();) {Object obj = i.next();MultipartFile mFile = (MultipartFile) fileMap.get(obj);// 得到上傳的文件的文件名String filename = mFile.getOriginalFilename();if (filename == "" || filename == null) {continue;}SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");// 獲取文件后綴名String fileExt = filename.substring(filename.lastIndexOf("."));// 按時間格式重新生成文件名String newFileName = sdf.format(new Date())+ (int) (Math.random() * 100) + fileExt;String filePath = path + "/" + newFileName;// 文件流寫到服務器端try {filePaths.put(obj.toString(), filePath);File saveFile = new File(fileUrl, newFileName);FileCopyUtils.copy(mFile.getBytes(), saveFile);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}return filePaths;}/*** 刪除文件,* * @param request請求* @param filePath文件路徑* (static/upload/...)* @return*/public static boolean fileDelete(HttpServletRequest request, String filePath) {String fileUrl = request.getSession().getServletContext().getRealPath("http://" + filePath);// 得到上傳服務器的物理路徑File file = new File(fileUrl);fileDelete(file);return false;}以上就是本文的全部內容,希望本文的內容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持武林網!
新聞熱點
疑難解答