【发布时间】:2011-04-20 07:12:12
【问题描述】:
有没有办法在 Qt 中获取文件的 MIME 类型?
我正在编写一个需要查找给定文件的 MIME 类型的应用程序。
【问题讨论】:
有没有办法在 Qt 中获取文件的 MIME 类型?
我正在编写一个需要查找给定文件的 MIME 类型的应用程序。
【问题讨论】:
为此,您需要使用 3rd 方库,Qt 本身不支持 mime 类型的猜测。在 Linux/Unix 上,您可以使用 libmagic。
【讨论】:
Qt 5 增加了对 MIME 类型的支持:
http://doc.qt.io/qt-5/qmimedatabase.html
QString path("/home/my_user/my_file");
#if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
QMimeDatabase db;
QMimeType type = db.mimeTypeForFile(path);
qDebug() << "Mime type:" << type.name();
#endif
【讨论】:
#include <QMimeDatabase>
QString mimeType( const QString &filePath ){ return QMimeDatabase().mimeTypeForFile( filePath ).name(); }
【讨论】: