java mp3 信息_如何用Java读取MP3文件的Tag信息

展开全部

以随机读写方式打开一个MP3文件

将文件指针偏移量移动到文件长度倒数128位

判断标签头"TAG"是否存在

读取62616964757a686964616fe78988e69d8331333363356538TAG_V1中的各个内容

关闭文件

TAG_V1(长度是固定的)其中包括的信息有:

标签头"TAG"    3字节

标题            30字节

作者            30字节

专辑            30字节

出品年份        4字节

备注信息        28字节

保留            1字节

音轨            1字节

类型            1字节

读入一个MP3文件的TAG_V1部分信息:byte buf = new byte[128];//初始化标签信息的byte数组

RandomAccessFile raf = new RandomAccessFile(mp3, "r");//随机读写方式打开MP3文件

raf.seek(raf.length() - 128);//移动到文件MP3末尾

raf.read(buf);//读取标签信息

raf.close();//关闭文件

if(buf.length != 128){//数据长度是否合法

throw new Exception("MP3标签信息数据长度不合法!");

}

if(!"TAG".equalsIgnoreCase(new String(buf,0,3))){//标签头是否存在

throw new Exception("MP3标签信息数据格式不正确!");

}

获得TAG_V1中的各个内容:

String SongName = new String(buf,3,30,"utf-8").trim();//歌曲名称

String Artist = new String(buf,33,30,"utf-8").trim();//歌手名字

String Album = new String(buf,63,30,"utf-8").trim();//专辑名称

String Year = new String(buf,93,4,"utf-8").trim();//出品年份

String Comment = new String(buf,97,28,"utf-8").trim();//备注信息

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值