时间: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邮箱联系删除。
根据项目需要,研究了一下如何在ASP.NETMVC下实现批量文件上传。首先,介绍单文件上传;然后,介绍多文件上传如何实现。一、单文件上传单文件上传的原理是将文件
本文分为两大方面进行讲解:一、java实现动态上传多个文件二、解决文件重命名问题java供大家参考,具体内容如下1、动态上传多个文件File:删除functio
本文实例讲述了PHP实现单文件、多个单文件、多文件上传函数的封装。分享给大家供大家参考,具体如下:表单:s.php要在选择上传文件时能一次选择多个文件,那么就加
开发中会经常涉及到文件上传的需求,根据业务不同的需求,有不同的文件上传情况。有简单的单文件上传,有多文件上传,因浏览器原生的文件上传样式及功能的支持度不算太高,
本文实例讲述了Java文件上传与文件下载实现方法。分享给大家供大家参考,具体如下:Java文件上传数据上传是客户端向服务器端上传数据,客户端向服务器发送的所有请