QMimeType Class
QMimeType 类用 MIME 类型字符串描述文件或数据类型。更多
头文件: | #include <QMimeType> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
- 所有成员(包括继承成员)的列表
- QMimeType 属于隐式共享类。
该类可等价比较。
属性
|
|
公共职能
QMimeType() | |
QMimeType(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) |
QMimeType & | operator=(QMimeType &&other) |
QMimeType & | operator=(const QMimeType &other) |
相关非成员
size_t | qHash(const QMimeType &key, size_t seed = 0) |
bool | operator!=(const QMimeType &lhs, const QMimeType &rhs) |
bool | operator==(const QMimeType &lhs, const QMimeType &rhs) |
详细说明
例如,名为 "readme.txt "的文件的 MIME 类型为 "text/plain"。MIME 类型可以从文件名、文件内容或两者中确定。MIME 类型的确定也可以在非文件数据的缓冲区中进行。
确定文件的 MIME 类型有助于确保应用程序支持该类型。在类似文件管理器的应用程序或小工具中也很有用,这样可以为文件显示适当的icon ,甚至在详细视图中显示描述性的comment 。
要检查文件是否具有预期的 MIME 类型,应使用inherits() 而不是基于name() 的简单字符串比较。这是因为 MIME 类型可以相互继承:例如,C 源文件是一种特定类型的纯文本文件,因此 text/x-csrc 继承了 text/plain。
另请参阅 QMimeDatabase 和MIME 类型浏览器。
属性文档
[read-only]
aliases : const QStringList
此属性包含此 mIME 类型的别名列表
例如,对于 text/csv,返回的列表是:text/x-csv、text/x-comma-separated-values。
请注意,所有QMimeType 实例都是指适当的 MIME 类型,而不是直接指别名。
列表中别名的顺序未定义。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QStringList | aliases() const |
[read-only]
allAncestors : const QStringList
该属性包含直接和间接父 MIME 类型的名称
返回该 MIME 类型的所有直接和间接父 MIME 类型。其中包括父 MIME 类型的父 MIME 类型等。
例如,对于 image/svg+xml,列表为:application/xml、text/plain、application/octet-stream。
请注意,application/octet-stream 是所有类型文件(但不包括目录)的最终父文件。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QStringList | allAncestors() const |
[read-only]
comment : const QString
该属性包含将在用户界面上显示的 MIME 类型的说明
返回根据用户当前语言设置本地化的 MIME 类型描述。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QString | comment() const |
[read-only]
filterString : const QString
该属性包含一个可用于文件对话框的过滤字符串
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QString | filterString() const |
[read-only]
genericIconName : const QString
该属性包含表示 MIME 类型的通用图标的文件名。
如果在系统中找不到iconName() 返回的图标,则应使用该图标。它用于类似类型的类别(如电子表格或档案),这些类别可以使用一个通用图标。freedesktop.org 图标命名规范列出了一组此类图标名称。
图标名称可提供给QIcon::fromTheme() 以加载图标。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QString | genericIconName() const |
[read-only]
globPatterns : const QStringList
该属性保存 glob 匹配模式列表
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QStringList | globPatterns() const |
[read-only]
iconName : const QString
该属性包含代表 MIME 类型的图标图像的文件名。
图标名称可提供给QIcon::fromTheme() 以加载图标。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QString | iconName() const |
[read-only]
isDefault : const bool
true
如果该 MIME 类型是适用于所有文件的默认 MIME 类型:application/octet-stream。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
bool | isDefault() const |
[read-only]
name : const QString
该属性包含 MIME 类型的名称。
该属性在 5.10 中引入,但相应的访问方法一直存在。
访问函数:
QString | name() const |
[read-only]
parentMimeTypes : const QStringList
该属性包含父 MIME 类型的名称
如果第一个类型的任何实例也是第二个类型的实例,那么该类型就是另一个类型的子类。例如,所有图像/svg+xml 文件也是 text/xml、text/plain 和 application/octet-stream 文件。子类是关于格式的,而不是数据的类别(例如,不存在所有电子表格都继承自的 "通用电子表格 "类)。相反,image/svg+xml 的父 mimetype 是 text/xml。
一个 mimetype 可以有多个父级。例如,application/x-perl 有两个父类型:application/x-executable 和 text/plain。这样既可以执行 perl 脚本,也可以在文本编辑器中打开它们。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QStringList | parentMimeTypes() const |
[read-only]
preferredSuffix : const QString
该属性包含 MIME 类型的首选后缀
不包括前导点,例如,对于 application/pdf,将返回 "pdf"。对于没有相关后缀的 MIME 类型,返回值可以为空。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QString | preferredSuffix() const |
[read-only]
suffixes : const QStringList
该属性包含 MIME 类型的已知后缀
不包含前导点,因此例如,对于 image/jpeg,将返回 "jpg"、"jpeg"。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
QStringList | suffixes() const |
[read-only]
valid : const bool
true
如果 对象包含有效数据,则 否则QMimeType false
有效的 MIME 类型有一个非空的name() 。无效的 MIME 类型是默认构造的QMimeType 。
虽然该属性是在 5.10 中引入的,但相应的访问方法一直存在。
访问函数:
bool | isValid() const |
成员函数文档
QMimeType::QMimeType()
使用默认属性值初始化此 QMimeType 对象,默认属性值表示无效 MIME 类型。
QMimeType::QMimeType(const QMimeType &other)
构造此 QMimeType 对象,作为other 的副本。
[noexcept]
QMimeType::~QMimeType()
销毁QMimeType 对象,并释放 d 指针。
[invokable]
bool QMimeType::inherits(const QString &mimeTypeName) const
如果此 mimetype 是mimeTypeName ,或继承于mimeTypeName (见parentMimeTypes()),或mimeTypeName 是此 mimetype 的别名,则返回true
。
自 5.10 版起,可从 QML 调用此方法。
注: 可通过元对象系统和 QML 调用此函数。请参阅Q_INVOKABLE 。
[noexcept]
void QMimeType::swap(QMimeType &other)
将此 MIME 类型与other 互换。该操作速度非常快,而且从不出错。
swap() 方法有助于以异常安全的方式实现赋值运算符。更多信息,请查阅More C++ Idioms - Copy-and-swap.
[noexcept]
QMimeType &QMimeType::operator=(QMimeType &&other)
Move-assignsother 到此QMimeType 实例。
QMimeType &QMimeType::operator=(const QMimeType &other)
将other 的数据赋值给QMimeType 对象,并返回该对象的引用。
相关非成员
[noexcept]
size_t qHash(const QMimeType &key, size_t seed = 0)
返回key 的哈希值,使用seed 作为计算的种子。
[noexcept]
bool operator!=(const QMimeType &lhs, const QMimeType &rhs)
如果QMimeType lhs 不等于QMimeType rhs ,则返回true
,否则返回false
。
[noexcept]
bool operator==(const QMimeType &lhs, const QMimeType &rhs)
如果lhs 等于rhs QMimeType 对象,则返回true
,否则返回false
。名称是一个 mimetype 的唯一标识符,因此具有相同名称的两个 mimetype 是相等的。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.