【发布时间】:2011-06-16 18:47:55
【问题描述】:
我正在尝试读取 mp3 文件的 ID3V2 标头。我可以获取/打印 ID3 并想打印出 char 类型的“版本”和“颠覆”,但我无法得到我需要的东西。
代码如下:
}
.....
fseek(file,0,SEEK_SET);
fread(&tag.TAG, 1, sizeof(tag),file); // tag is structure with elements of header
if(strncmp(tag.TAG,"ID3", 3) == 0)
{
fread(&tag.version,1, sizeof(tag),file);
fread(&tag.subversion,1, sizeof(tag),file);
printf("ID3v2.%s.%s", tag.version, tag.subversion);
}
}
一个。
【问题讨论】:
-
为什么要删除格式?
-
你为什么读
sizeof(tag)字节? fread 调用应该看起来像fread(&member, sizeof member, 1, file)。 并测试fread()的返回值! -
停止编辑答案以回复他们;改为对您自己的问题进行编辑或发表评论(如果/当您达到 50 个代表时,您也可以在答案上留下 cmets)。