java文件上传(单文件 多文件)与删除

时间:2021-05-19

话不多说,请看代码

/*** 文件上传--单文件* * @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("\\" + 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("\\" + 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("\\" + filePath);// 得到上传服务器的物理路径File file = new File(fileUrl);fileDelete(file);return false;}

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章