急!!!!!
跪谢!!!
5 个解决方案
#1
CFile m_file;
BOOL er=m_file.Open("D:\\g.mp3",CFile::modeRead);
long offset=-128;
m_file.SeekToBegin();
long f=m_file.Seek(offset,CFile::end);
TCHAR pbuf[128];
m_file.Read( pbuf,128);
BOOL er=m_file.Open("D:\\g.mp3",CFile::modeRead);
long offset=-128;
m_file.SeekToBegin();
long f=m_file.Seek(offset,CFile::end);
TCHAR pbuf[128];
m_file.Read( pbuf,128);
#2
标准格式的mp3文件中,都有一些自身描述的信息,比如歌曲名称、歌手、专辑名称等信息。
这些信息都记录在mp3文件中,而且格式是固定的。那么,我们就可以用编程的方式来获取这些信息。其实说简单一点,就是VC文件读取的操作。不过mp3有一定的信息结构,在mp3文件的最后128个字节,就包含上述的信息。那么我们打开mp3文件, 读取最后128个字节即可。
利用如下的结构体,我们就可以方便获取mp3的信息了:
typedef struct _MP3INFO //MP3信息的结构
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
做人要厚道 没分咋行啊。。。。。。
这些信息都记录在mp3文件中,而且格式是固定的。那么,我们就可以用编程的方式来获取这些信息。其实说简单一点,就是VC文件读取的操作。不过mp3有一定的信息结构,在mp3文件的最后128个字节,就包含上述的信息。那么我们打开mp3文件, 读取最后128个字节即可。
利用如下的结构体,我们就可以方便获取mp3的信息了:
typedef struct _MP3INFO //MP3信息的结构
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
做人要厚道 没分咋行啊。。。。。。
#3
LS们 说的只适合ID3v1。
而ID3v2 比较灵活。。。
具体 去找个文档看看吧。
而ID3v2 比较灵活。。。
具体 去找个文档看看吧。
#4
http://hi.baidu.com/kakasheli/blog/item/7906798b85d5fbd4fc1f10ab.html
帮楼主找了一下,这里面非常详细。
包括ID3V1信息与ID3V2信息,这里ID3V1很简单,就如前面所提到的,就是ID3V2有点复杂。
帮楼主找了一下,这里面非常详细。
包括ID3V1信息与ID3V2信息,这里ID3V1很简单,就如前面所提到的,就是ID3V2有点复杂。
#5
typedef struct _MP3INFO //MP3信息的结构
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
这个结构体该怎么使用啊,另外怎么才能将获取到得歌曲信息显示出来,跪谢
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
这个结构体该怎么使用啊,另外怎么才能将获取到得歌曲信息显示出来,跪谢
#1
CFile m_file;
BOOL er=m_file.Open("D:\\g.mp3",CFile::modeRead);
long offset=-128;
m_file.SeekToBegin();
long f=m_file.Seek(offset,CFile::end);
TCHAR pbuf[128];
m_file.Read( pbuf,128);
BOOL er=m_file.Open("D:\\g.mp3",CFile::modeRead);
long offset=-128;
m_file.SeekToBegin();
long f=m_file.Seek(offset,CFile::end);
TCHAR pbuf[128];
m_file.Read( pbuf,128);
#2
标准格式的mp3文件中,都有一些自身描述的信息,比如歌曲名称、歌手、专辑名称等信息。
这些信息都记录在mp3文件中,而且格式是固定的。那么,我们就可以用编程的方式来获取这些信息。其实说简单一点,就是VC文件读取的操作。不过mp3有一定的信息结构,在mp3文件的最后128个字节,就包含上述的信息。那么我们打开mp3文件, 读取最后128个字节即可。
利用如下的结构体,我们就可以方便获取mp3的信息了:
typedef struct _MP3INFO //MP3信息的结构
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
做人要厚道 没分咋行啊。。。。。。
这些信息都记录在mp3文件中,而且格式是固定的。那么,我们就可以用编程的方式来获取这些信息。其实说简单一点,就是VC文件读取的操作。不过mp3有一定的信息结构,在mp3文件的最后128个字节,就包含上述的信息。那么我们打开mp3文件, 读取最后128个字节即可。
利用如下的结构体,我们就可以方便获取mp3的信息了:
typedef struct _MP3INFO //MP3信息的结构
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
做人要厚道 没分咋行啊。。。。。。
#3
LS们 说的只适合ID3v1。
而ID3v2 比较灵活。。。
具体 去找个文档看看吧。
而ID3v2 比较灵活。。。
具体 去找个文档看看吧。
#4
http://hi.baidu.com/kakasheli/blog/item/7906798b85d5fbd4fc1f10ab.html
帮楼主找了一下,这里面非常详细。
包括ID3V1信息与ID3V2信息,这里ID3V1很简单,就如前面所提到的,就是ID3V2有点复杂。
帮楼主找了一下,这里面非常详细。
包括ID3V1信息与ID3V2信息,这里ID3V1很简单,就如前面所提到的,就是ID3V2有点复杂。
#5
typedef struct _MP3INFO //MP3信息的结构
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
这个结构体该怎么使用啊,另外怎么才能将获取到得歌曲信息显示出来,跪谢
{
char Identify[3]; //TAG三个字母
//这里可以用来鉴别是不是文件信息内容
char Title[31]; //歌曲名,30个字节
char Artist[31]; //歌手名,30个字节
char Album[31]; //所属唱片,30个字节
char Year[5]; //年,4个字节
char Comment[29]; //注释,28个字节
unsigned char reserved; //保留位,1个字节
unsigned char reserved2; //保留位,1个字节
unsigned char reserved3; //保留位,1个字节
} MP3INFO;
这个结构体该怎么使用啊,另外怎么才能将获取到得歌曲信息显示出来,跪谢