File indexing completed on 2026-09-10 09:21:08
0001
0002
0003
0004
0005
0006 #ifndef QMIMEDATABASE_H
0007 #define QMIMEDATABASE_H
0008
0009 #include <QtCore/qmimetype.h>
0010
0011 QT_REQUIRE_CONFIG(mimetype);
0012
0013 #include <QtCore/qstringlist.h>
0014
0015 QT_BEGIN_NAMESPACE
0016
0017 class QByteArray;
0018 class QFileInfo;
0019 class QIODevice;
0020 class QUrl;
0021
0022 class QMimeDatabasePrivate;
0023 class Q_CORE_EXPORT QMimeDatabase
0024 {
0025 Q_DISABLE_COPY(QMimeDatabase)
0026
0027 public:
0028 QMimeDatabase();
0029 ~QMimeDatabase();
0030
0031 QMimeType mimeTypeForName(const QString &nameOrAlias) const;
0032
0033 enum MatchMode {
0034 MatchDefault = 0x0,
0035 MatchExtension = 0x1,
0036 MatchContent = 0x2
0037 };
0038
0039 QMimeType mimeTypeForFile(const QString &fileName, MatchMode mode = MatchDefault) const;
0040 QMimeType mimeTypeForFile(const QFileInfo &fileInfo, MatchMode mode = MatchDefault) const;
0041 QList<QMimeType> mimeTypesForFileName(const QString &fileName) const;
0042
0043 QMimeType mimeTypeForData(const QByteArray &data) const;
0044 QMimeType mimeTypeForData(QIODevice *device) const;
0045
0046 QMimeType mimeTypeForUrl(const QUrl &url) const;
0047 QMimeType mimeTypeForFileNameAndData(const QString &fileName, QIODevice *device) const;
0048 QMimeType mimeTypeForFileNameAndData(const QString &fileName, const QByteArray &data) const;
0049
0050 QString suffixForFileName(const QString &fileName) const;
0051
0052 QList<QMimeType> allMimeTypes() const;
0053
0054 private:
0055 QMimeDatabasePrivate *d;
0056 };
0057
0058 QT_END_NAMESPACE
0059
0060 #endif