- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我只想遍历 .xml 文件(所选文件夹及其子目录下的所有文件),QDirIterator
是否可行?
QDirIterator iter( rootDir, QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot);
QString fileName;
while(iter.hasNext() )
{
qDebug() << iter.next();
fileName = iter.fileName();
// now I have to check if fileName is indeed a .xml extension
}
从上面的代码中可以看出,如果我的迭代器只能跳转到 .xml 文件,那么我就不必在循环中检查文件扩展名..这可能吗?
最佳答案
constructors of QDirIterator 之一允许 nameFilters 参数:
QDirIterator::QDirIterator ( const QString & path, const QStringList & nameFilters, QDir::Filters filters = QDir::NoFilter, IteratorFlags flags = NoIteratorFlags )
Constructs a QDirIterator that can iterate over path, using nameFilters and filters.
nameFilters
参数没有正确记录,但它很有可能像 QDir::setNameFilters 中那样工作.
QDirIterator it(rootdir, QStringList() << "*.xml", QDir::Files, QDirIterator::Subdirectories);
while (it.hasNext()) {
qDebug() << it.next();
}
关于c++ - 如何使用 QDirIterator 遍历特定类型的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28463090/
这将迭代一个目录和子目录,但我如何指定“C:/”和“D:/”等等?我想指定多个目录。这可能吗? QDirIterator it("C:/", QDirIterator::Subdirectories)
我正在尝试找出一种递归迭代目录的方法,该目录在程序运行时主动将新文件添加到其中。 QDirIterator 可以很好地进行初始迭代,但似乎没有办法“刷新” QDirIterator 以便它再次遍历目录
我只想遍历 .xml 文件(所选文件夹及其子目录下的所有文件),QDirIterator 是否可行? QDirIterator iter( rootDir, QDir::Files | QDir::D
我有一个包含2个文件的目录: Test1.txt和Test2.txt 此代码应列出两个文件: QDirIterator *it; QStringList nameFilters; nameFilter
我正在尝试从使用 MinGW 4.8.1 为 Windows 交叉编译的 QT 5.1 应用程序中查找用户桌面上的快捷方式。 我的代码片段 QFileInfoList result; QDir use
我有数千个文件要处理,目录结构如下: YYYY_MM_DD XXX XXX XXX Target .hdr files XXX XXX
我在 Qt 5 项目的单个范围内使用多个 QDirIterator。它们通常看起来像这样: QDirIterator i(QDir::currentPath(), QDir::Dirs | QDir:
在 PySide 中,当我使用 QDirIterator 时,如何按名称过滤文件? 在文档中,它谈到了参数nameFilters: https://srinikom.github.io/pyside-
以下代码以某种方式未能注意到名称中包含非 ASCII 字符(特别是西里尔字符)的任何文件: for (int path = 1; path < argc; path++) { QFileInfo
我想知道在使用 QDirIterator 时是否可以排除/过滤目录。我希望它跳过它/完全忽略它。 QString SkipThisDir = "C:\stuff"; Q
我想要做的是它给我一个列表,其中包含目录和子目录中的所有 .cpp 文件。问题 it.HasNext 保持为 false 并且 it.filePath 保持为空。 main.cpp #include
我是一名优秀的程序员,十分优秀!