您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > C++类编写音乐播放器(mp3文件遍历部分)
#includeiostream.h#includestdlib.h#includewindows.h#includemmsystem.h#includestring#includetime.h#includefstream.h#includestdio.h#pragmacomment(lib,winmm.lib)classMp3file{friendclassMp3list;public:private:charTAG[3];//标签chartitle[30];//歌名charartlist[30];//歌手charalbum[30];//专辑charyear[4];//发售年份charcomments[30];//备注charadd[25];//MP3终极地址unsignedchargenre[1];//无意义Mp3file*next;};classMp3list{friendclassMp3file;public:Mp3list();voidaddmanymp3(chara[]);voidaddsinglemp3();private:intlength;//歌曲总数Mp3file*head;//歌曲链表的头抵制Mp3file*end;//当前歌曲链表末位地址};Mp3list::Mp3list(){length=0;head=newMp3file[1];end=head;}voidMp3list::addmanymp3(chara[]){Mp3file*p2;p2=newMp3file[1];intl;chartuozhanming[10]=*.mp3;l=strlen(a)+strlen(tuozhanming);char*temp;temp=newchar[l];sprintf(temp,%s%s,a,tuozhanming);WIN32_FIND_DATAp;HANDLEh=FindFirstFile(temp,&p);//使用这个函数可以选定第一个查找到的文件puts(p.cFileName);//可能是输出查找到的相关文件fstreamfp;fp.open(strcat(a,p.cFileName),ios::in|ios::binary);fp.seekg(-128L,ios::end);fp.read(p2-TAG,4);//标签头fp.read(p2-title,31);//歌名fp.read(p2-artlist,31);//作者fp.read(p2-album,31);//专辑名fp.read(p2-year,5);//年代fp.read(p2-comments,31);//文件描述sprintf(p2-add,%s,strcat(a,p.cFileName));end-next=p2;end=p2;length=length+1;while(FindNextFile(h,&p)){Mp3file*p1;p1=newMp3file();char*temp2;intle;le=strlen(a)+strlen(p.cFileName);temp2=newchar[le];sprintf(temp2,%s%s,a,p.cFileName);fp.open(temp2,ios::in|ios::binary);puts(p.cFileName);fp.seekg(-128L,ios::end);fp.read(p1-TAG,4);//标签头fp.read(p1-title,31);//歌名fp.read(p1-artlist,31);//作者fp.read(p1-album,31);//专辑名fp.read(p1-year,5);//年代fp.read(p1-comments,31);//文件描述sprintf(p1-add,%s,temp2);end-next=p1;end=p1;length++;}FindClose(h);}voidmain(){Mp3listm1;charaddress[20];cout请输入地址endl;cinaddress;m1.addmanymp3(address);}
本文标题:C++类编写音乐播放器(mp3文件遍历部分)
链接地址:https://www.777doc.com/doc-2901812 .html