// Struct_Mp3.cpp : 定义控制台应用程序的入口点。//
#include "stdafx.h"#include<stdio.h>#include<stdlib.h>
int _tmain(int argc, _TCHAR* argv[]){ struct MUSIC_TITAL_INFO { char ID3v1TAG[3];//存储标题信息 char Artist[30]; //存储歌手信息 char Album[30]; //存储专辑信息 char YEAR[4]; //存储年代信息 char Comments[28]; //存储备注信息,28个字节(有时为字节) char Genre; //存储音乐风格信息,保留位,个字节 char Reserved; //保留位,个字节(有时没有意思 char Track; //音轨(曲号)保留位,个字节(有时没有) };
struct MUSIC_TITAL_INFO music_mp3={0,0,0,0,0,0}; char music_buf[128]={0}; char filename[80] = "E://test.mp3";
FILE *fp_mp3; fp_mp3 = fopen( filename, "rb" ) ; //打开失败 if(fp_mp3 == NULL ) { printf("Open failed! Try it again!"); getchar(); return -1; } //打开成功 fseek(fp_mp3,-128,SEEK_END);
if( fread(music_buf,128,1,fp_mp3 ) == 0)//读入标签 { printf( "fgets error/n" ); } else { memcpy(&music_mp3,music_buf,sizeof(music_mp3)); printf( "歌曲标签:%.3s/n歌 手: %.30s/n专 辑: %.30s/n年 代: %.4s/n备 注: %.28s/n", music_mp3.ID3v1TAG, music_mp3.Artist, music_mp3.Album, music_mp3.YEAR, music_mp3.Comments);//注意“.”的用法。 }
fclose(fp_mp3);
printf("Press any key to continue...."); getchar(); return 0;}