java 获取MP3文件时长信息(绝对执行版)

作者 做棵大树 日期 2017-06-20
java 获取MP3文件时长信息(绝对执行版)

[v_blue] 依赖jar: jl1.0.1.jar 下载地址: http://download.csdn.net/detail/u010271614/9498172 [/v_blue]

首先说一下,我不是太闲的无聊才在这里码代码的,我是因为要交JAVA第一学期的一个大作业,而我的作业就是一个迷你的音乐播放器(等我完工了,代码还会发表到我的梯云上哦 :oops: ),而这就需要获取歌曲的时间,于是博主就总结了一些方法,最后还是认为这种最好,而且是绝对执行版的!

有不少梯友们可能会因为各种原因需要获取音乐的长度,而这个时候呢,怎么获取就成了一种问题。我们大多可以在百度上百度到很多代码,博客园,CSDN,他们提供了几种方法,包括博猪先前也发表了一篇文章,里边列了3中方法。可是就连我对这3中都不太满意,最后呢,博猪就上我的代码了!

public static String getAudioPlayTime(String filePath){
FileInputStream stream;
int time = 0;
try {
stream = new FileInputStream(new File(filePath));
int b = stream.available();
Bitstream bt = new Bitstream(stream);
Header h = bt.readFrame();
time = (int) h.total_ms(b);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (BitstreamException e) {
e.printStackTrace();
}
int i = time/1000; //获取歌曲的秒数。
//由于一般表示时长的格式都是 ,于是呢,博猪就在这里改为这种形式
int m = i/60; //获取分钟数
int s = i%60; //获取除去分钟后的秒数,即对 60 取余
// System.out.println(“mp3时长为:”+i+”s”);
String longtime=new String(m+”:”+s);
return longtime; //返回String
}
}

喜欢本站的话,不妨添加以下收藏吧!快捷键:Ctrl+D

如果感觉文章对你有帮助,不介意的话,可以打赏一下穷穷的博主哦! :oops:

转载请注明:转自TeenShare梯云分享