Java轻松使用工具类实现获取MP3音频时长

获取mp3格式音频时长。

Maven依赖

        <dependency>
            <groupId>org</groupId>
            <artifactId>jaudiotagger</artifactId>
            <version>2.0.1</version>
        </dependency>

代码

import org.jaudiotagger.audio.AudioFileIO;
import org.jaudiotagger.audio.mp3.MP3AudioHeader;
import org.jaudiotagger.audio.mp3.MP3File;

import java.io.File;

/** @Author huyi @Date 2021/9/30 15:06 @Description: mp3音频工具 */
public class AudioMp3Utils {
  /**
   * 获取mp3语音文件播放时长(秒) mp3
   *
   * @param filePath
   * @return
   */
  public static void getMp3Duration(String filePath) {
    try {
      File mp3File = new File(filePath);
      MP3File f = (MP3File) AudioFileIO.read(mp3File);
      MP3AudioHeader audioHeader = (MP3AudioHeader) f.getAudioHeader();
      System.out.println("时长:" + Float.parseFloat(audioHeader.getTrackLength() + ""));
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  public static void main(String[] args) {
    getMp3Duration("E:\\csdn\\dzgz.mp3");
  }
}

执行结果:

说明

单位为秒,酌情使用。

到此这篇关于Java轻松使用工具类实现获取MP3音频时长的文章就介绍到这了,更多相关Java 获取MP3音频时长内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2021-10-25

Java基础类之ArrayUtils工具类详解

目录 1.引入pom依赖 2.ArrayUtils中的方法: 3.举例 总结 1.引入pom依赖 <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 --> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <

java 如何计算同比增长工具类

java 计算同比增长工具类 为了数据的严谨性,统一装换为BigDecimal,话不多说,看代码. package com.pig4cloud.pigx.admin.api.util; import java.math.BigDecimal; public class PercentCount { public String percentBigDecimal(BigDecimal preNum,BigDecimal sufNum){ double result = countDecimal(p

JAVA文件读取常用工具类(8种)

目录 一.读取文件成字节 二.将字节写入文件 三.按行读取文件成list 四.输出list到文件 五.从标准输入中读入 六.读取文件成字符串 七.输出字符串到文件 八.读取文件成数据矩阵 总结 JAVA操作文件在经常会使用到,本文汇总了部分JAVA操作文件的读取常用工具类,希望可以帮到大家.直接上代码. 一.读取文件成字节 将文件内容转为字节,需要使用到FileInputStream文件字节输入流,将文件输入到文件字节输入流中,使用FileInputStream的available()方法获取与

Java并发工具类Exchanger的相关知识总结

一.Exchanger的理解 Exchanger 属于java.util.concurrent包: Exchanger 是 JDK 1.5 开始提供的一个用于两个工作线程之间交换数据的封装工具类; 一个线程在完成一定的事务后想与另一个线程交换数据,则第一个先拿出数据的线程会一直等待第二个线程,直到第二个线程拿着数据到来时才能彼此交换对应数据. 二.Exchanger类中常用方法 public Exchanger() 无参构造方法.表示创建一个新的交换器. public V exchange(V

Java轻松使用工具类实现获取wav时间长度

获取wav格式音频时长. Maven依赖 <dependency> <groupId>org</groupId> <artifactId>jaudiotagger</artifactId> <version>2.0.1</version> </dependency> 工具类 import org.jaudiotagger.audio.wav.util.WavInfoReader; import java.io.

Java 基础--Arrays工具类详解

目录 1.数组转换成字符串 2.数组转换成集合 (1)asList (2)stream 流操作 (3)Collections.addAll() 3.对数组进行升序排列 4.判断数组是否相等 5.所有元素赋特定值 6.对数组复制 7.查询数组下标 8.返回数组 hashcode 值 总结 Arrays 是 JDK 提供的操作数组的工具类,Arrays 类提供了动态创建.访问和操作 Java 数组的方法.此类还包含一个允许将数组作为列表来查看的静态工厂. 1.数组转换成字符串 public stat

java文件处理工具类详解

本文实例为大家分享了java文件处理工具类的具体代码,供大家参考,具体内容如下 import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream;

基于Java中的StringTokenizer类详解(推荐)

StringTokenizer是字符串分隔解析类型,属于:Java.util包. 1.StringTokenizer的构造函数 StringTokenizer(String str):构造一个用来解析str的StringTokenizer对象.java默认的分隔符是"空格"."制表符('\t')"."换行符('\n')"."回车符('\r')". StringTokenizer(String str,String delim)

微信小程序 常用工具类详解及实例

微信小程序 常用工具类详解 前言: 做微信小程序当中,会遇到好多的工具类util.js,这里记载下来以便平常使用 (Ps:建议通过目录查看) -获取日期(格式化) function formatTime(date) { var year = date.getFullYear() var month = date.getMonth() + 1 var day = date.getDate() var hour = date.getHours() var minute = date.getMinut

java的Arrays工具类实战

java.util.Arrays类能方便地操作数组,它提供的所有方法都是静态的.静态方法是属于类的,不是属于类的对象.所以可以直接使用类名加方法名进行调用.Arrays作为一个工具类,能很好的操作数组.下面介绍主要使用的几个函数. 1.fill方法 fill方法主要用来填充数组,这里我们举最简单的int类型吧(其它类型的一样) 看Arrays的fill源码 示例代码: Java代码 publicstaticvoidmain(String[] args) { inta[]=newint[5]; /

js时间戳转yyyy-MM-dd HH-mm-ss工具类详解

在web开发中,我们经常需要用js将时间戳转yyyy-MM-dd HH-mm-ss类似的格式,这样才适合我们的观感,那么我们该如何在js中将时间戳转换成这种格式呢?其实很简单,我们开发一个时间戳工具类,如下: 第一种:最简单的是一个js时间格式的转换函数方法 function formatDateTime(inputTime) { var date = new Date(inputTime); var y = date.getFullYear(); var m = date.getMonth()

JAVA中的Configuration类详解

本文主要研究的是Java中的Configuration类的用法,涉及maven自动加载,pom.xml配置和简单的Java代码,具体如下. properties文件是Java平台默认的配置文件格式,其优点是格式清晰,简单易懂,使用commons-configuration读取properties文件也比较简单,代码如下: 基本用法: 1.加载jar包,我使用maven自动加载,pom.xml配置如下: <dependency> <groupId>commons-configurat

Java FileUploadUtil工具类详解

本文实例为大家分享了FileUploadUtil工具类的具体代码,供大家参考,具体内容如下 package com.gootrip.util; import java.io.File; import java.util.*; import org.apache.commons.fileupload.*; import javax.servlet.http.HttpServletRequest; import java.util.regex.Pattern; import java.io.IOEx

java中DateUtils时间工具类详解

本文实例为大家分享了DateUtils时间工具类的具体代码,供大家参考,具体内容如下 package com.example.administrator.myapp; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Date 工具类 * Created by lychun on 2017/12/07

java金额数字转中文工具类详解

本文实例为大家分享了java金额数字转中文工具类的具体代码,供大家参考,具体内容如下 java金额数字转中文工具类ConvertNum.java package light.mvc.utils; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; /** * 金额数字转中文工具类 * * @author ardo * */ public class Convert

java中文转拼音工具类详解

本文实例为大家分享了java中文转拼音工具类的具体代码,供大家参考,具体内容如下 import java.util.HashSet; import java.util.Iterator; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; import java.util.regex.PatternSyntaxException; import net.sourceforge.