QMimeType 类

QMimeType 类描述由 MIME 类型字符串表示的文件或数据的类型。 更多...

头: #include <QMimeType>
CMake: find_package(Qt6 COMPONENTS Core REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core
Since: Qt 5.0

特性

公共函数

  QMimeType (const QMimeType & other )
  QMimeType ()
QMimeType & operator= (QMimeType && other )
QMimeType & operator= (const QMimeType & other )
  ~QMimeType ()
QStringList aliases () const
QStringList allAncestors () const
QString comment () const
QString filterString () const
QString genericIconName () const
QStringList globPatterns () const
QString iconName () const
bool inherits (const QString & mimeTypeName ) const
bool isDefault () const
bool isValid () const
QString name () const
QStringList parentMimeTypes () const
QString preferredSuffix () const
QStringList suffixes () const
void swap (QMimeType & other )
bool operator!= (const QMimeType & other ) const
bool operator== (const QMimeType & other ) const
size_t qHash (const QMimeType & key , size_t seed = 0)

详细描述

For instance a file named "readme.txt" has the MIME type "text/plain". The MIME type can be determined from the file name, or from the file contents, or from both. MIME type determination can also be done on buffers of data not coming from files.

Determining the MIME type of a file can be useful to make sure your application supports it. It is also useful in file-manager-like applications or widgets, in order to display an appropriate icon for the file, or even the descriptive comment in detailed views.

To check if a file has the expected MIME type, you should use inherits () rather than a simple string comparison based on the name (). This is because MIME types can inherit from each other: for instance a C source file is a specific type of plain text file, so text/x-csrc inherits text/plain.

另请参阅 QMimeDatabase and MIME 类型浏览器范例 .

特性文档编制

[read-only] aliases : const QStringList

This property holds the list of aliases of this mimetype

For instance, for text/csv, the returned list would be: text/x-csv, text/x-comma-separated-values.

Note that all QMimeType instances refer to proper mimetypes, never to aliases directly.

The order of the aliases in the list is undefined.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QStringList aliases () const

[read-only] allAncestors : const QStringList

This property holds the names of direct and indirect parent MIME types

Return all the parent mimetypes of this mimetype, direct and indirect. This includes the parent(s) of its parent(s), etc.

For instance, for image/svg+xml the list would be: application/xml, text/plain, application/octet-stream.

Note that application/octet-stream is the ultimate parent for all types of files (but not directories).

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QStringList allAncestors () const

[read-only] comment : const QString

This property holds the description of the MIME type to be displayed on user interfaces

The default language (QLocale(). name ()) is used to select the appropriate translation.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QString comment () const

[read-only] filterString : const QString

This property holds a filter string usable for a file dialog

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QString filterString () const

[read-only] genericIconName : const QString

This property holds the file name of a generic icon that represents the MIME type

This should be used if the icon returned by iconName () cannot be found on the system. It is used for categories of similar types (like spreadsheets or archives) that can use a common icon. The freedesktop.org Icon Naming Specification lists a set of such icon names.

The icon name can be given to QIcon::fromTheme () in order to load the icon.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QString genericIconName () const

[read-only] globPatterns : const QStringList

This property holds the list of glob matching patterns

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QStringList globPatterns () const

[read-only] iconName : const QString

This property holds the file name of an icon image that represents the MIME type

The icon name can be given to QIcon::fromTheme () in order to load the icon.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QString iconName () const

[read-only] isDefault : const bool

true if this MIME type is the default MIME type which applies to all files: application/octet-stream.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

bool isDefault () const

[read-only] name : const QString

This property holds the name of the MIME type

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QString name () const

[read-only] parentMimeTypes : const QStringList

This property holds the names of parent MIME types

A type is a subclass of another type if any instance of the first type is also an instance of the second. For example, all image/svg+xml files are also text/xml, text/plain and application/octet-stream files. Subclassing is about the format, rather than the category of the data (for example, there is no 'generic spreadsheet' class that all spreadsheets inherit from). Conversely, the parent mimetype of image/svg+xml is text/xml.

A mimetype can have multiple parents. For instance application/x-perl has two parents: application/x-executable and text/plain. This makes it possible to both execute perl scripts, and to open them in text editors.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QStringList parentMimeTypes () const

[read-only] preferredSuffix : const QString

This property holds the preferred suffix for the MIME type

No leading dot is included, so for instance this would return "pdf" for application/pdf. The return value can be empty, for mime types which do not have any suffixes associated.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QString preferredSuffix () const

[read-only] suffixes : const QStringList

This property holds the known suffixes for the MIME type

No leading dot is included, so for instance this would return "jpg", "jpeg" for image/jpeg.

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

QStringList suffixes () const

[read-only] valid : const bool

true QMimeType object contains valid data, false otherwise

A valid MIME type has a non-empty name (). The invalid MIME type is the default-constructed QMimeType .

While this property was introduced in 5.10, the corresponding accessor method has always been there.

访问函数:

bool isValid () const

成员函数文档编制

QMimeType:: QMimeType (const QMimeType & other )

Constructs this QMimeType object as a copy of other .

QMimeType:: QMimeType ()

Constructs this QMimeType object initialized with default property values that indicate an invalid MIME type.

[since 5.2] QMimeType &QMimeType:: operator= ( QMimeType && other )

移动赋值 other 到此 QMimeType 实例。

该函数在 Qt 5.2 引入。

QMimeType &QMimeType:: operator= (const QMimeType & other )

Assigns the data of other 到此 QMimeType object, and returns a reference to this object.

QMimeType:: ~QMimeType ()

销毁 QMimeType object, and releases the d pointer.

[invokable] bool QMimeType:: inherits (const QString & mimeTypeName ) const

返回 true if this mimetype is mimeTypeName , or inherits mimeTypeName (见 parentMimeTypes ()), or mimeTypeName is an alias for this mimetype.

This method has been made invokable from QML since 5.10.

注意: 此函数可以被援引,通过元对象系统和从 QML。见 Q_INVOKABLE .

void QMimeType:: swap ( QMimeType & other )

交换 QMimeType other with this QMimeType 对象。

此操作非常快且从不失败。

The swap() method helps with the implementation of assignment operators in an exception-safe way. For more information consult More C++ Idioms - Copy-and-swap .

bool QMimeType:: operator!= (const QMimeType & other ) const

返回 true if other does not equal this QMimeType object, otherwise returns false .

bool QMimeType:: operator== (const QMimeType & other ) const

返回 true if other equals this QMimeType object, otherwise returns false . The name is the unique identifier for a mimetype, so two mimetypes with the same name, are equal.

相关非成员

[since 5.6] size_t qHash (const QMimeType & key , size_t seed = 0)

返回哈希值为 key ,使用 seed 做计算种子。

该函数在 Qt 5.6 引入。