SpringMVC 获取Map3,视频等文件播放时长

一、

        导入相关依赖   小编使用的是 jave-1.0.2.jar 注意是jave  不是java,通过网上搜索资源即可下载,如果下载不到可以联系小编,免费发。如果拿到jar不会转成maven方式引用可以参考:本地jar包 打包到本地Maven仓库_小影~的博客-CSDN博客

二、

        编写相关代码:

import it.sauronsoftware.jave.Encoder;
import it.sauronsoftware.jave.MultimediaInfo;

@PostMapping("fileupload")
public void files(@RequestParam("file") MultipartFile videoFile, HttpServletRequest request) throws IOException {
    String resultUrl = "";

    // 临时文件防止为止 项目根目录下 /upload文件夹下
    String path = System.getProperty("user.dir") + "/upload";
    File realPath = new File(path);
    if (!realPath.exists()) {// 如果不存在就创建这个目录
        realPath.mkdir();
    }
    // 上传的文件是否存在
    if (videoFile.getOriginalFilename() != null) {
        try {
            // 旧文件名
            String filename = videoFile.getOriginalFilename();
            // 防止冲突生成新文件名
            String newName = UUID.randomUUID().toString().replaceAll("-", "") + filename.substring(filename.lastIndexOf("."));
            // 放入临时目录中
            videoFile.transferTo(new File(realPath, newName));
            // 移动后的文件地址
            //String resultUrl = request.getSession().getServletContext().getRealPath("\\upload\\") + newName; // 文件存储路径
            resultUrl = System.getProperty("user.dir") + "\\upload\\" + newName;
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    System.out.println("文件后移动地址= " + resultUrl);
    //新文件
    File newVideoFile = new File(resultUrl);
    //获取视频文件时长
    Encoder encoder = new Encoder();
    try {
        MultimediaInfo m = encoder.getInfo(newVideoFile);
        SimpleDateFormat sdf=new SimpleDateFormat("mm:ss");
       //   m.getDuration(); =视频时长单位毫秒
        System.err.println(sdf.format(m.getDuration())) ; // 视频时长
         /*   if(minute<1)
                minute = 1;*/
    } catch (Exception e) {
        System.out.println("出现错误");
    }
}

三、

        运行中如果出现异常:the request was rejected because its size (11364527) exceeds the configured 那就是springboot文件上传,文件过大导致异常

在application.properties文件中配置合适的上传大小即可

spring.servlet.multipart.max-file-size=100MB
spring.servlet.multipart.max-request-size=100MB

四、

        运行结果:

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值