java 解析MP3文件
首先需要知道的是,MP3文件的文件信息都放在文件最后的128个字节里面,这128个字节分别存储的信息如下:
char Header[3]; /* 标签头必须是"TAG"否则认为没有标签 */
char Title[30]; /* 标题 */
char Artist[30]; /* 作者 */
char Album[30]; /* 专集 */
char Year[4]; /* 出品年代 */
char Comment[28]; /* 备注 */
char reserve; /* 保留 */
char track;; /* 音轨 */
char Genre; /* 类型 */
代码:
public class ReadMP3 {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
String path = System.getProperty("user.dir")+"/images/wenbie.mp3";
readMp3ID3V1(path);
}
public static void readMp3ID3V1(String path) throws Exception{
byte[] buf = new byte[1024];
File file = new File(path);
FileInputStream fis = new FileInputStream(file);
/*---读取MP3文件尾部信息,并显示----*/
long size = file.length();
System.out.println("文件总字节数:"+size);
fis.skip(size-128);
//标志位TAG:3 byte
fis.read(buf,0,3);
String tag = new String(buf,0,3);
System.out.println( "ID3V1: "+tag);
//歌曲名称 30 byte
fis.read(buf,0,30);
String songname = new St
相关文档:
花了一个多月用Java NIO写了一个定制的HTTP Server,主要是支持我的WeBuzz.IM网页版聊天服务
。
先介绍一下WeBuzz.IM网页聊天服务。
WeBuzz.IM
是一款网页版即时聊天工具,用于帮助用户通过网页和朋友聊天。Gtalk(Google Talk)
、MSN(Windows Live Messenger)
、Yahoo! Messenger(Yahoo! Chat,又称为雅虎通)
......
在Java
虚拟机中,被加载类型的信息都保存在方法区中。这些信息在内存中的组织形式由虚拟机的实现者定义,比如,虚拟机工作在一个“little- endian”
的处理器上,他就可以将信息保存为“little-endian”
格式的,虽然在Java
类文件中他们是以“big-endian”
格式保 存的。设 ......
1.树集TreeSet
TreeSet类在java.util包中
树集中的结点是按着其存放的数据的字典序一层一层地依次排列 在同一层中的结点从左到右按字典序递增排列
A.构造方法:TreeSet()
B.常用方法
& ......
记得第一次接触闭包的时候,觉得很奇怪,但从字面上很那理解闭包什么玩意,和闭包有的一比的当属控制反转,真正理解了后觉得就平常了。闭包二字其实是很经典的,闭包代码所表现的东西可不就是一个封闭的、自成一体的功能块吗?简单的说,闭包就是在内部定义的方法,拿到外面去使用。经典的javascript闭包形式如下:
Java代 ......