【发布时间】:2017-05-19 12:15:39
【问题描述】:
我无法用UTF-8-encoding 和QMediaPlaylist 加载*m3u-playlistfiles。
第一个入口的路径没有正确加载。
正如您在屏幕截图中看到的,第一个条目的路径以 D:/D/Media/New folder/ 开头,这是播放列表的路径,然后是 ,然后是媒体文件的相对路径,因为它保存在*m3u 文件。
使用带有ANSI-encoding 的 *m3u-files 我没有这些麻烦。
在这种情况下,像“ü”这样的字符(第二个条目)也没有正确编码。
有没有办法在不编写我自己的播放列表解析器的情况下解决这个问题?
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
QDirIterator it("D:/D/Media/New folder", QStringList() << "*.m3u", QDir::Files, QDirIterator::Subdirectories);
while (it.hasNext())
{
it.next();
QMediaPlaylist currentPlaylist;
currentPlaylist.clear();
currentPlaylist.load(QUrl::fromLocalFile(it.filePath()));
currentPlaylist.setCurrentIndex(0);
int x = 1;
ui->textBrowser->append(it.fileName());
ui->textBrowser->append("-----");
while(currentPlaylist.mediaCount() > 0)
{
ui->textBrowser->append(QString::number(x) + QString(": ") + currentPlaylist.currentMedia().canonicalUrl().toString());
x++;
currentPlaylist.removeMedia(0);
}
ui->textBrowser->append("");
}
}
*m3u-内容
..\Musik\Mittelalter Party\Mittelalter Party Volume 1\Tanzwut - Meer.mp3
..\Musik\ASP\Humility\ASP - Küss mich (Chamber version).mp3
..\Musik\Disturbed\Ten Thousand Fists\Disturbed - Ten Thousand Fists.mp3
【问题讨论】: