可以用本地的文件地址测试(令url=文件地址)
package com.test.inside.util;import org.jaudiotagger.audio.AudioFileIO;
import org.jaudiotagger.audio.exceptions.CannotReadException;
import org.jaudiotagger.audio.exceptions.InvalidAudioFrameException;
import org.jaudiotagger.audio.exceptions.ReadOnlyFileException;
import org.jaudiotagger.audio.mp3.MP3AudioHeader;
import org.jaudiotagger.audio.mp3.MP3File;
import org.jaudiotagger.tag.FieldKey;
import org.jaudiotagger.tag.TagException;
import org.jaudiotagger.tag.id3.AbstractID3v2Frame;
import org.jaudiotagger.tag.id3.AbstractID3v2Tag;
import org.jaudiotagger.tag.id3.framebody.FrameBodyAPIC;import javax.swing.*;
import java.awt.*;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;public class Mp3Util {/*** 获取MP3歌曲名、歌手、时长、照片信息* @param url* @return*/public static void getMP3Info(String url) throws ReadOnlyFileException, TagException, InvalidAudioFrameException, IOException, CannotReadException {**url = "D:\\CloudMusic\\Ada - new sou.mp3";//测试数据**MP3File mp3File = (MP3File) AudioFileIO.read(new File(url));AbstractID3v2Tag v2tag = mp3File.getID3v2Tag();String artist = v2tag.getFirst(FieldKey.ARTIST);// 歌手名String album = v2tag.getFirst(FieldKey.ALBUM);// 專輯名String songName = v2tag.getFirst(FieldKey.TITLE);// 歌名System.out.println("album: " + album); // 專輯名System.out.println("singer: " + artist); // 歌手名System.out.println("songName: " + songName); // 歌名MP3AudioHeader header = mp3File.getMP3AudioHeader(); // mp3文件頭部信息int length = header.getTrackLength();System.out.println("Length: " + length / 60 + ":" + length % 60 + "sec"); // 歌曲時長AbstractID3v2Tag tag = mp3File.getID3v2Tag();AbstractID3v2Frame frame = (AbstractID3v2Frame) tag.getFrame("APIC");FrameBodyAPIC body = (FrameBodyAPIC) frame.getBody();byte[] imageData = body.getImageData();//System.out.println(imageData);Image img=Toolkit.getDefaultToolkit().createImage(imageData, 0,imageData.length);System.out.println("img----" + imageData);ImageIcon icon = new ImageIcon(img);FileOutputStream fos = new FileOutputStream("D://test1.jpg");fos.write(imageData);fos.close();getImg(icon);}public static void getImg(ImageIcon img){JFrame f = new JFrame();JLabel l = new JLabel();l.setIcon(img);l.setVisible(true);f.add(l);f.setSize(500, 500);f.setVisible(true);}
}

大多从网上借鉴,自己整理了一下,以后可以学习。

java获取MP3文件信息(歌手,歌名,封面,专辑,时长)相关推荐

  1. java mp3 信息_android,java获取MP3文件信息(作者,专辑等)

    接着上一篇文章, 上一篇把ndk开发遍历手机文件分享了一下.遍历出来的MP3文件,我需要展示在android的listview里面,想展示的好看一点,结果发现又是一个坑. 根据mp3文件,获取作者啊专 ...

  2. java获取MP3文件的id3信息(包括封面图,歌词,艺术家,标题等)

    MP3结构简单介绍 有时我们会发现MP3文件在电脑上可以显示出封面图,艺术家,标题,唱片集等等信息,这是因为MP3中有ID3标签信息. MP3文件大体上分为三个部分:ID3V2+音频数据+ID3V1 ...

  3. jaudiotagger获取MP3文件信息及封面图片

    #jaudiotagger获取MP3文件信息及封面图片 ###maven依赖: <dependency><groupId>org</groupId><arti ...

  4. Java 实现MP3文件信息读取

    前言: 最近在做实训,写一个音乐播放器,将文件存储在服务端,然后将相应的数据信息添加到数据库中.不想一个个手动添加,所以在百度之后发现MP3文件本身是只带这些信息的. 更新因为目前mp3文件中ID3v ...

  5. java读取mp3文件信息_用JAVA读取MP3文件的标签信息

    突然看到网上有人在用JavaScript来读取MP3中ID3信息.详细请看! 我也在网上搜索了用Flex写的实现同样的功能的.详细请看! 但是我比较熟悉Java.所以也在网上搜索到了用Java实现的读 ...

  6. php修改音频文件_php获取mp3文件信息时长修改

    function djinfo($dir) { if(!file_exists($dir)) return ''; if(substr(php_uname('s'),0,7)=="Windo ...

  7. Java获取MP3文件时长的几种方法

    在网上找了很多方法,其中最匮乏的就是获取网络资源音频的时长,在这里总结一下: 1:获取网络资源音频时长: 这种方法是获取文件字节大小然后在用公式自己算的 BufferedInputStream bis ...

  8. C#之获取mp3文件信息

    下载Interop.Shell32.dll 添加引用 并将dll的属性 "嵌入互操作类型"改为false string file = Server.MapPath("/M ...

  9. java 上传mp3文件大小,Java获取音频文件(MP3)的播放时长

    最近的一个项目需要按照时间播放mp3文件,例如,播放10分钟的不同音乐. 这就意味着我得事先知道mp3文件的播放时长,以决定播放几遍这个文件. 方案一:Java的方式 找第三方的库,真的感谢这些提供j ...

最新文章

  1. C++多线程实现生产者消费者模式
  2. Native层HIDL服务的获取原理-Android10.0 HwBinder通信原理(七)
  3. Python学习笔记__1.5章 循环
  4. 管理服务器一般的作用,管理服务器作用
  5. python多线程编程(2): 线程的创建、启动、挂起和退出
  6. VUE初始化一个项目
  7. 上下文信息 RpcContext
  8. QuillBot:又一个值得拥有的论文润色工具
  9. oracle存储sql片段引入_强大的跨数据库访问组件 UniDAC使用教程:注释和SQL函数...
  10. 超级抖音腾讯视频V3.6.0小程序源码 前端+后端 支持视频采集和上传
  11. auto.js下载安装教程
  12. Codechef:Walk on Tree/TREEWALK(Berlekamp-Massey算法)
  13. 如何将html改成mht格式,如何编辑mht格式的文件,什么是mht?
  14. 谷歌账户跑着跑着没点击了,跑不出去什么原因。
  15. 瑞萨e2studio(1)----瑞萨芯片之搭建FSP环境
  16. DDD 实战 (11):冲刺 1 代码 TDD 实现之道
  17. iOS系统越狱研究现状梳理
  18. 什么从什么写短句_什么是什么,能什么写句子补充完整
  19. CN_计算机网络性能指标@信道利用率@信道吞吐率
  20. java object取数据_java使用ObjectInputStream从文件中读取对象

热门文章

  1. c++ 反射_实现光时域反射仪中的应用原理基于飞凌FETA40i-C核心板
  2. tomcat下载和配置(简单,详细)
  3. LINUX JDK 安装与环境变量设置
  4. 网络协议之:基于 UDP 的高速数据传输协议 UDT
  5. 互联网快讯:天猫双11总交易额再创新高;极米投影产品成双十一单品爆款;柔宇科技斩获6亿元大额订单
  6. quartus的操作和仿真
  7. 解读电力调度、电力市场、技术创新,国网南网新型电力系统行动方案
  8. mp4转换html5,html5-video – VLC:如何从mp4转换为webm
  9. 乐队设备--功放的学习和使用
  10. 利用python在网上接单赚钱,兼职也能月入过万,还不赶紧学起来...