QrcParser 类
class Utils::QrcParserQrcParser 类解析一个或多个 QRC 文件并缓存其内容。 更多信息...
头文件 | #include <QrcParser> |
公共类型
公共函数
void | collectFilesAtPath(const QString &path, QStringList *res, const QLocale *locale = nullptr) const |
void | collectFilesInPath(const QString &path, QMap<QString, QStringList> *res, bool addDirs = false, const QLocale *locale = nullptr) const |
void | collectResourceFilesForSourceFile(const QString &sourceFile, QStringList *res, const QLocale *locale = nullptr) const |
QStringList | errorMessages() const |
QString | firstFileAtPath(const QString &path, const QLocale &locale) const |
bool | hasDirAtPath(const QString &path, const QLocale *locale = nullptr) const |
bool | isValid() const |
QStringList | languages() const |
bool | parseFile(const QString &path, const QString &contents) |
静态公共成员
QString | normalizedQrcDirectoryPath(const QString &path) |
QString | normalizedQrcFilePath(const QString &path) |
Utils::QrcParser::Ptr | parseQrcFile(const QString &path, const QString &contents) |
QString | qrcDirectoryPathForQrcFilePath(const QString &file) |
详细描述
一个 Qt 资源集合 (QRC) 包含从文件系统中读取的文件,但组织方式可能不同。为了以简单的结构轻松描述这一点,我们使用从 QRC 路径到文件系统路径的映射。通过使用映射,我们可以轻松找到所有以给定前缀开始的 QRC 路径,从而循环 QRC 目录。
QRC 文件也支持语言,语言映射到 QRC 路径的前缀。例如,法语 /image/bla.png (lang=fr) 将具有路径 fr/image/bla.png
。空语言表示默认资源。语言使用 uiLanguages() 属性进行查找。
对于单个 QRC,给定路径映射到单个文件,但在一个有多个(平台特定且互斥)QRC 文件时,多个文件匹配,因此使用 QStringList。
特别是,collect* 函数被认为是低级接口。
成员函数说明
void QrcParser::collectFilesAtPath(const QString &path, QStringList *res, const QLocale *locale = nullptr) const
将给定 QRC path 的文件系统路径添加到 res。
如果 locale 是 null,则添加所有可能的文件。否则,只添加与区域设置匹配的第一个文件。
void QrcParser::collectFilesInPath(const QString &path, QMap<QString, QStringList> *res, bool addDirs = false, const QLocale *locale = nullptr) const
如果 addDirs 设置为 true
,则将给定 QRC path 的目录内容添加到 res。
将给定 path 中包含的 QRC 文件名添加到文件系统路径关联中 res。如果 addDirs()
是 true
,则也会添加目录。
如果 locale 是 null,则添加所有可能的文件。否则,只添加与区域设置匹配的第一个文件。
void QrcParser::collectResourceFilesForSourceFile(const QString &sourceFile, QStringList *res, const QLocale *locale = nullptr) const
将 QRC 文件 sourceFile 的资源文件添加到 res。
如果 locale 是 null,则添加所有可能的文件。否则,只添加与区域设置匹配的第一个文件。
QStringList QrcParser::errorMessages() const
返回解析过程中找到的错误。
QString QrcParser::firstFileAtPath(const QString &path, const QLocale &locale) const
返回给定 QRC path 和 locale 的第一个(活动)文件的系统路径。
bool QrcParser::hasDirAtPath(const QString &path, const QLocale *locale = nullptr) const
如果 path 是一个非空目录且与 locale 匹配,则返回 true
。
bool QrcParser::isValid() const
指示 QRC 内容是否有效。
如果 QRC 为空,则返回错误。
QStringList QrcParser::languages() const
返回此 QRC 中使用的所有语言。
[静态]
QString QrcParser::normalizedQrcDirectoryPath(const QString &path)
返回将path标准化到 QRC 资源目录的路径,通过移除qrc:/
或:
和任何额外的斜杠,并确保路径以斜杠结尾。
[静态]
QString QrcParser::normalizedQrcFilePath(const QString &path)
将path标准化为一个 QRC 资源文件中的文件路径,通过移除qrc:/
或:
和任何开头的额外斜杠。
bool QrcParser::parseFile(const QString &path, const QString &contents)
解析path处的 QRC 文件。如果contents不为空,则它用作文件内容,而不是从文件系统中读取。
返回解析是否成功。
另请参阅错误信息()和parseQrcFile()。
[静态]
Utils::QrcParser::Ptr QrcParser::parseQrcFile(const QString &path, const QString &contents)
返回path处 QRC 文件的内容。
[静态]
QString QrcParser::qrcDirectoryPathForQrcFilePath(const QString &file)
返回file的 QRC 目录路径。
©2024 Qt 公司 Ltd. 本文档中包含的贡献的版权属于各自的所有者。本提供文档是在自由软件基金会发布的GNU 自由文档许可证版本 1.3的条款下授权的。Qt及其相关标志是芬兰及其它国家和全球的Qt公司的商标。所有其他商标均为其各自所有者的财产。