我想从mp3文件中读取id3tag。我知道这个地方在mp3文件的最后128个字节中。
所以我这样做了代码:
#include <stdio.h>
#include <iostream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
FILE *pFile = fopen("1.mp3", "r");
fseek(pFile, -128, SEEK_END);
char artist;
for (int i = 0; i < 128; i++)
{
fread(&artist, sizeof(char), 1, pFile);
cout << "A: " << artist << endl;
}
getchar();
return 0;
}
不要担心输出,它只是一个样本。
谷歌搜索后,我找到了这个信息:
我的问题,我不明白为什么:
我在Windows上工作,例如我打开mp3文件属性(我想阅读)并设置标题超过30个符号。在使用我的程序之后,在输出中我在标题中只有30个符号,但在文件的支柱中它再次更多。 请帮帮我,我想知道为什么?
答案 0 :(得分:0)
Sry,我发现了一个问题。 mp3文件在最后128个字节的文件末尾有id3v1标签,并且在文件的开头有一个id3v2.x标签。