欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

SpringMVC中MultipartFile转File的两种方式

时间:2022-06-29 09:22:10|栏目:JAVA代码|点击:

在spring上传文件中,一般都使用了MultipartFile来接收,但是有需要用到File的地方,这里只介绍两种转为File的方法,当然也有一些其他的方法,我试了有些错误,所以就不提了;

  • transferTo()
  • org.apache.commons.io.FileUtils.copyInputStreamToFile()

代码如下:

public void upload(@RequestParam(value = "file") MultipartFile file) {
        if (file != null) { 
            try {
                String fileRealName = file.getOriginalFilename();//获得原始文件名; 
                int pointIndex =  fileRealName.lastIndexOf(".");//点号的位置     
                String fileSuffix = fileRealName.substring(pointIndex);//截取文件后缀  
                String fileNewName = DateUtils.getNowTimeForUpload();//新文件名,时间戳形式yyyyMMddHHmmssSSS
                String saveFileName = fileNewName.concat(fileSuffix);//新文件完整名(含后缀) 
                String filePath  = "D:\\FileAll" ;
                File path = new File(filePath); //判断文件路径下的文件夹是否存在,不存在则创建
                if (!path.exists()) {
                    path.mkdirs();
                }            
                File savedFile = new File(filePath);
                boolean isCreateSuccess = savedFile.createNewFile(); // 是否创建文件成功
                if(isCreateSuccess){      //将文件写入      
                    //第一种             
                    file.transferTo(savedFile); 
                     //第二种
                    savedFile = new File(filePath,saveFileName);
                    // 使用下面的jar包
                    FileUtils.copyInputStreamToFile(file.getInputStream(),savedFile);
                }                              
            } catch (Exception e) {
                e.printStackTrace();                
            }
        }else {
            System.out.println("文件是空的");
        }
    }

附commons-io jar包maven地址:点击下载 commons-io-2.4.jar

<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
<dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.4</version>
</dependency>

上一篇:elasticsearch节点间通信的基础transport启动过程

栏    目:JAVA代码

下一篇:Java实现人脸识别登录、注册等功能(最新完整版)

本文标题:SpringMVC中MultipartFile转File的两种方式

本文地址:http://www.codeinn.net/misctech/206277.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有