本文实例为大家分享了java文件上传下载的具体代码,供大家参考,具体内容如下
文件上传
@RequestMapping(value="/uploadFile",method=RequestMethod.POST) public ResultObject uploadFiles(@RequestParam("file")MultipartFile file,HttpServletRequest request){ ResultObject rs = null;//返回上传完成信息 String uploadDir = "files";//上传目录,文件保存在webapp下的files文件中 if(!file.isEmpty()) { //可以对user做一些操作如存入数据库 //以下的代码是将文件file重新命名并存入Tomcat的webapp目录下项目的下级目录 String fileRealName = file.getOriginalFilename(); //获得原始文件名; /*int pointIndex = fileRealName.indexOf("."); //点号的位置 String fileSuffix = fileRealName.substring(pointIndex); //截取文件后缀 UUID FileId = UUID.randomUUID(); //生成文件的前缀包含连字符 String savedFileName = FileId.toString().replace("-", "").concat(fileSuffix); //文件存取名 */ String savedDir = request.getSession().getServletContext().getRealPath(uploadDir); //获取服务器指定文件存取路径 File savedFile = new File(savedDir, fileRealName); boolean isCreateSuccess; try { isCreateSuccess = savedFile.createNewFile(); if (isCreateSuccess) { file.transferTo(savedFile); //转存文件 rs = ResultObject.getSuccessResult("上传文件成功"); Long size = file.getSize();//获取文件大小 rs.setData(uploadDir+fileRealName); }else{ rs = ResultObject.getFailResult("请修改文件名,重新上传"); } } catch (IOException e) { e.printStackTrace(); } }else{ rs = ResultObject.getFailResult("文件不能为空"); } return rs; }
文件下载
@RequestMapping(value = "/filterPermission/appDownLoad", method = RequestMethod.GET) public void appDownLoad(HttpServletRequest request, HttpServletResponse response) { //url是上面文件上传的url download(url,request,response); }
public String download(String filePath, HttpServletRequest request, HttpServletResponse response) { BufferedInputStream bis = null; BufferedOutputStream bos = null; try { //获取文件名 String fileName = filePath.substring(filePath.lastIndexOf("/")+1); response.setCharacterEncoding("utf-8"); response.setContentType("application/octet-stream"); //response.setContentType("application/force-download"); //处理下载弹出框名字的编码问题 response.setHeader("Content-Disposition", "attachment;fileName=" + new String( fileName.getBytes("gb2312"), "ISO8859-1" )); //获取文件的下载路径 String path = request.getSession().getServletContext().getRealPath(filePath); //利用输入输出流对文件进行下载 InputStream inputStream = new FileInputStream(new File(path)); //设置文件大小 response.setHeader("Content-Length", String.valueOf(inputStream.available())); bis = new BufferedInputStream(inputStream);//构造读取流 bos = new BufferedOutputStream(response.getOutputStream());//构造输出流 byte[] buff = new byte[1024]; int bytesRead; //每次读取缓存大小的流,写到输出流 while (-1 != (bytesRead = bis.read(buff, 0, buff.length))) { bos.write(buff, 0, bytesRead); } response.flushBuffer();//将所有的读取的流返回给客户端 } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ try{ if(null != bis){ bis.close(); } if(null != bos){ bos.close(); } }catch(IOException e){ System.out.println("下载文件失败,"+"文件路径:"+filePath+e); logger.error("文件下载失败!", e); } } // 返回值要注意,要不然就出现下面这句错误! //java+getOutputStream() has already been called for this response return null; }
以上所述是小编给大家介绍的java文件上传下载详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
本文向大家介绍java文件上传下载功能实现代码,包括了java文件上传下载功能实现代码的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了文件上传下载java实现代码,供大家参考,具体内容如下 前台: 1. 提交方式:post 2. 表单中有文件上传的表单项: <input type=”file” /> 3. 指定表单类型: 默认类型:enctype="application/x
本文向大家介绍Spring mvc文件上传下载代码实例,包括了Spring mvc文件上传下载代码实例的使用技巧和注意事项,需要的朋友参考一下 简介 文件上传是项目开发中最常见的功能之一 ,springMVC 可以很好的支持文件上传,但是SpringMVC上下文中默认没有装配MultipartResolver,因此默认情况下其不能处理文件上传工作。如果想使用Spring的文件上传功能,则需要在上下
本文向大家介绍java webservice上传下载文件代码分享,包括了java webservice上传下载文件代码分享的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了java webservice上传下载文件代码,供大家参考,具体内容如下 1、新建动态web工程youmeFileServer,新建包com,里面新建类FileProgress 2、发布测试webservice(ec
本文向大家介绍SpringMVC实现文件的上传和下载实例代码,包括了SpringMVC实现文件的上传和下载实例代码的使用技巧和注意事项,需要的朋友参考一下 前些天一位江苏经贸的学弟跟我留言问了我这样一个问题:“用什么技术来实现一般网页上文件的上传和下载?是框架还是Java中的IO流”。我回复他说:“使用SpringMVC框架可以做到这一点,因为SpringMVC为文件的上传提供了直接的支持,但需要
本文向大家介绍Webwork 实现文件上传下载代码详解,包括了Webwork 实现文件上传下载代码详解的使用技巧和注意事项,需要的朋友参考一下 本文主要从三个方面给大家介绍webwork文件上传下载知识,包括以下三个方面: 1. 包装 Request 请求 2. 获取文件上传的解析类 3. 项目实战配置和使用 Web上传和下载应该是很普遍的一个需求,无论是小型网站还是大并发访问的交易网站。WebW
本文向大家介绍C#实现文件上传及文件下载功能实例代码,包括了C#实现文件上传及文件下载功能实例代码的使用技巧和注意事项,需要的朋友参考一下 废话不多说了,直接给大家贴代码了,具体代码如下所示: 总结 以上所述是小编给大家介绍的C#实现文件上传及文件下载功能实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对呐喊教程网站的支持!