使用taglib(c ++)将Mp3文件为null

时间:2015-03-25 01:51:31

标签: c++ taglib

我在c ++中使用taglib来改变mp3文件中的元数据。我写了一个很好的代码。但是我找到了一个无法用taglib打开的MP3文件。

MP3文件有标签。我可以通过Vlc媒体播放器和MediaInfo以及explorer.exe看到它们。

我尝试这个最小代码,但它说该文件无效。

TagLib::FileRef filer("file.mp3");
        if(filer.isNull())
            cout <<"null";

或此代码:

TagLib::MPEG::File fileMpeg("file.mp3");
if(!fileMpeg.isValid())
{
   cout << "file not valid";
}

其他文件有效但不是那个。 谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

我发现问题,问题不是来自文件,而是来自文件名或目录。 要解决这个问题,我需要cont wchar_t*而不是const char*,因为我尝试打开的文件包含ISO或unicode编码的法语字符,但不包含ASCII。