QDirListing::DirEntry Class
class QDirListing::DirEntry- 所有成员(包括继承成员)的列表
- DirEntry 属于输入/输出和网络。
公共函数
QString | absoluteFilePath() const |
QString | absolutePath() const |
QString | baseName() const |
QDateTime | birthTime(const QTimeZone &tz) const |
QString | bundleName() const |
QString | canonicalFilePath() const |
QString | completeBaseName() const |
QString | completeSuffix() const |
bool | exists() const |
QFileInfo | fileInfo() const |
QString | fileName() const |
QString | filePath() const |
QDateTime | fileTime(QFileDevice::FileTime type, const QTimeZone &tz) const |
bool | isDir() const |
bool | isExecutable() const |
bool | isFile() const |
bool | isHidden() const |
bool | isReadable() const |
bool | isSymLink() const |
bool | isWritable() const |
QDateTime | lastModified(const QTimeZone &tz) const |
QDateTime | lastRead(const QTimeZone &tz) const |
QDateTime | metadataChangeTime(const QTimeZone &tz) const |
qint64 | size() const |
QString | suffix() const |
详细说明
引用一个有效的QDirListing::const_iterator 会返回一个 DirEntry 对象。
DirEntry 提供QFileInfo 的 API 子集(例如,fileName(),filePath(),exists() )。在内部,DirEntry 仅在需要时(即信息尚未被其他系统函数获取)构建QFileInfo 对象。您可以使用DirEntry::fileInfo() 获取QFileInfo :
using ItFlag = QDirListing::IteratorFlag; for (const auto &dirEntry : QDirListing(u"/etc"_s, ItFlag::Recursive)) { // Faster if (dirEntry.fileName().endsWith(u".conf")) { /* ... */ } // This works, but might be potentially slower, since it has to construct a // QFileInfo, whereas (depending on the implementation) the fileName could // be known already if (dirEntry.fileInfo().fileName().endsWith(u".conf")) { /* ... */ } } using ItFlag = QDirListing::IteratorFlag; for (const auto &dirEntry : QDirListing(u"/etc"_s, ItFlag::Recursive)) { // Both approaches are the same, because DirEntry will have to construct // a QFileInfo to get this info (for example, by calling system stat()) if (dirEntry.size() >= 4'000 /* 4KB */) { /* ...*/ } if (dirEntry.fileInfo().size() >= 4'000 /* 4KB */) { /* ... */ } }
成员函数文档
QDateTime DirEntry::birthTime(const QTimeZone &tz) const
QDateTime DirEntry::fileTime(QFileDevice::FileTime type, const QTimeZone &tz) const
QDateTime DirEntry::lastModified(const QTimeZone &tz) const
QDateTime DirEntry::lastRead(const QTimeZone &tz) const
QDateTime DirEntry::metadataChangeTime(const QTimeZone &tz) const
QFileInfo DirEntry::fileInfo() const
QString DirEntry::absoluteFilePath() const
QString DirEntry::absolutePath() const
QString DirEntry::baseName() const
QString DirEntry::bundleName() const
QString DirEntry::canonicalFilePath() const
QString DirEntry::completeBaseName() const
QString DirEntry::completeSuffix() const
QString DirEntry::fileName() const
QString DirEntry::filePath() const
QString DirEntry::suffix() const
bool DirEntry::exists() const
bool DirEntry::isDir() const
bool DirEntry::isExecutable() const
bool DirEntry::isFile() const
bool DirEntry::isHidden() const
bool DirEntry::isReadable() const
bool DirEntry::isSymLink() const
bool DirEntry::isWritable() const
qint64 DirEntry::size() const
请参见QFileInfo 中的同名方法。
© 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.