关于Qtcreater中解析单独解析歌曲信息的问题
来源: 互联网 发布时间:2017-04-30
本文导语: 最近在做Qt关于播放器的项目,需要用到解析出mp3、avi等格式的信息。这次以mp3为例。我使用的是 QFile和QDataStream两个类来解析文件。由于mp3后128字节中放着歌曲的信息,所以我这个代码按照这个来解析的。可是解析...
最近在做Qt关于播放器的项目,需要用到解析出mp3、avi等格式的信息。这次以mp3为例。我使用的是
QFile和QDataStream两个类来解析文件。由于mp3后128字节中放着歌曲的信息,所以我这个代码按照这个来解析的。可是解析不出来,结果全为空。请各位大神帮帮忙!(听闻可以用phonon里MeteDate能解析这些信息,但是不知道怎么用,不知道哪位大神能给个这个类型的例子看看)。
void resolveInfo::resolveFile(QString &filename)
{
QFile File(filename);//filename="/home/new/Test/resolveInfo/it.mp3";
if(!File.open(QFile::ReadOnly))
{
QMessageBox::warning(NULL,tr("Open File"),
tr("Can't Open File: %1 n").arg(filename),QMessageBox::Ok);
}
qint64 Fsize=File.size();
QDataStream data(&File);
char *tab1=new char[3];//
char *songname1=new char[30];//歌曲名
char *zhuanji1=new char[30];//专辑名
QString tab2;//
QString songname2;//
QString zhuanji2;//
//先测试字尾128字节的其中的一些信息是否能读取
int size=(int)Fsize;//将歌曲大小的类型转换
data.setVersion(size-128);//设置歌曲从哪开始读取数据
int vision=data.version();
data>>tab1;
data>>songname1;
data>>zhuanji1;
qDebug()
QFile和QDataStream两个类来解析文件。由于mp3后128字节中放着歌曲的信息,所以我这个代码按照这个来解析的。可是解析不出来,结果全为空。请各位大神帮帮忙!(听闻可以用phonon里MeteDate能解析这些信息,但是不知道怎么用,不知道哪位大神能给个这个类型的例子看看)。
void resolveInfo::resolveFile(QString &filename)
{
QFile File(filename);//filename="/home/new/Test/resolveInfo/it.mp3";
if(!File.open(QFile::ReadOnly))
{
QMessageBox::warning(NULL,tr("Open File"),
tr("Can't Open File: %1 n").arg(filename),QMessageBox::Ok);
}
qint64 Fsize=File.size();
QDataStream data(&File);
char *tab1=new char[3];//
char *songname1=new char[30];//歌曲名
char *zhuanji1=new char[30];//专辑名
QString tab2;//
QString songname2;//
QString zhuanji2;//
//先测试字尾128字节的其中的一些信息是否能读取
int size=(int)Fsize;//将歌曲大小的类型转换
data.setVersion(size-128);//设置歌曲从哪开始读取数据
int vision=data.version();
data>>tab1;
data>>songname1;
data>>zhuanji1;
qDebug()
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
站内导航:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!
©2012-2021,