青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

逛奔的蝸牛

我不聰明,但我會很努力

   ::  :: 新隨筆 ::  ::  :: 管理 ::
遍歷一個目錄下的所有文件,使用QDirIterator很方便,不需要自己去實現遞歸:
void Widget::browse() {
    QString path = QFileDialog::getExistingDirectory(this, tr(""), "/Users/Biao/Desktop");
    QDirIterator iter(path, QDirIterator::Subdirectories);

    while (iter.hasNext()) {
        iter.next();
        QFileInfo info = iter.fileInfo();

        if (info.isFile()) {
            qDebug() << info.absoluteFilePath();
        }
    }
    //treeWalk(path);
}


QDirIterator Class Reference

The QDirIterator class provides an iterator for directory entrylists. More...

 #include <QDirIterator>
This class was introduced in Qt 4.3.

List of all members, including inherited members
Public Types

enum IteratorFlag { NoIteratorFlags, Subdirectories, FollowSymlinks }
flags IteratorFlags
Public Functions

QDirIterator ( const QDir & dir, IteratorFlags flags = NoIteratorFlags )
QDirIterator ( const QString & path, IteratorFlags flags = NoIteratorFlags )
QDirIterator ( const QString & path, QDir::Filters filters, IteratorFlags flags = NoIteratorFlags )
QDirIterator ( const QString & path, const QStringList & nameFilters, QDir::Filters filters = QDir::NoFilter, IteratorFlags flags = NoIteratorFlags )
virtual ~QDirIterator ()
QFileInfo fileInfo () const
QString fileName () const
QString filePath () const
bool hasNext () const
QString next ()
QString path () const
Detailed Description

The QDirIterator class provides an iterator for directory entrylists.

You can use QDirIterator to navigate entries of a directory one at a time. It is similar to QDir::entryList() and QDir::entryInfoList(), but because it lists entries one at a time instead of all at once, it scales better and is more suitable for large directories. It also supports listing directory contents recursively, and following symbolic links. Unlike QDir::entryList(), QDirIterator does not support sorting.

The QDirIterator constructor takes a QDir or a directory as argument. After construction, the iterator is located before the first directory entry. Here's how to iterate over all the entries sequentially:

 QDirIterator it("/etc", QDirIterator::Subdirectories);
 while (it.hasNext()) {
     qDebug() << it.next();

     // /etc/.
     // /etc/..
     // /etc/X11
     // /etc/X11/fs
     // ...
 }
The next() function returns the path to the next directory entry and advances the iterator. You can also call filePath() to get the current file path without advancing the iterator. The fileName() function returns only the name of the file, similar to how QDir::entryList() works. You can also call fileInfo() to get a QFileInfo for the current entry.

Unlike Qt's container iterators, QDirIterator is uni-directional (i.e., you cannot iterate directories in reverse order) and does not allow random access.

QDirIterator works with all supported file engines, and is implemented using QAbstractFileEngineIterator.

See also QDir, QDir::entryList(), and QAbstractFileEngineIterator.

Member Type Documentation

enum QDirIterator::IteratorFlag
flags QDirIterator::IteratorFlags

This enum describes flags that you can combine to configure the behavior of QDirIterator.

Constant Value Description
QDirIterator::NoIteratorFlags 0x0 The default value, representing no flags. The iterator will return entries for the assigned path.
QDirIterator::Subdirectories 0x2 List entries inside all subdirectories as well.
QDirIterator::FollowSymlinks 0x1 When combined with Subdirectories, this flag enables iterating through all subdirectories of the assigned path, following all symbolic links. Symbolic link loops (e.g., "link" => "." or "link" => "..") are automatically detected and ignored.
The IteratorFlags type is a typedef for QFlags<IteratorFlag>. It stores an OR combination of IteratorFlag values.

Member Function Documentation

QDirIterator::QDirIterator ( const QDir & dir, IteratorFlags flags = NoIteratorFlags )

Constructs a QDirIterator that can iterate over dir's entrylist, using dir's name filters and regular filters. You can pass options via flags to decide how the directory should be iterated.

By default, flags is NoIteratorFlags, which provides the same behavior as in QDir::entryList().

The sorting in dir is ignored.

Note: To list symlinks that point to non existing files, QDir::System must be passed to the flags.

See also hasNext(), next(), and IteratorFlags.

QDirIterator::QDirIterator ( const QString & path, IteratorFlags flags = NoIteratorFlags )

Constructs a QDirIterator that can iterate over path. You can pass options via flags to decide how the directory should be iterated.

By default, flags is NoIteratorFlags, which provides the same behavior as in QDir::entryList().

Note: To list symlinks that point to non existing files, QDir::System must be passed to the flags.

See also hasNext(), next(), and IteratorFlags.

QDirIterator::QDirIterator ( const QString & path, QDir::Filters filters, IteratorFlags flags = NoIteratorFlags )

Constructs a QDirIterator that can iterate over path, with no name filtering and filters for entry filtering. You can pass options via flags to decide how the directory should be iterated.

By default, filters is QDir::NoFilter, and flags is NoIteratorFlags, which provides the same behavior as in QDir::entryList().

Note: To list symlinks that point to non existing files, QDir::System must be passed to the flags.

See also hasNext(), next(), and IteratorFlags.

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. You can pass options via flags to decide how the directory should be iterated.

By default, flags is NoIteratorFlags, which provides the same behavior as QDir::entryList().

Note: To list symlinks that point to non existing files, QDir::System must be passed to the flags.

See also hasNext(), next(), and IteratorFlags.

QDirIterator::~QDirIterator () [virtual]

Destroys the QDirIterator.

QFileInfo QDirIterator::fileInfo () const

Returns a QFileInfo for the current directory entry.

See also filePath() and fileName().

QString QDirIterator::fileName () const

Returns the file name for the current directory entry, without the path prepended.

This function is convenient when iterating a single directory. When using the QDirIterator::Subdirectories flag, you can use filePath() to get the full path.

See also filePath() and fileInfo().

QString QDirIterator::filePath () const

Returns the full file path for the current directory entry.

See also fileInfo() and fileName().

bool QDirIterator::hasNext () const

Returns true if there is at least one more entry in the directory; otherwise, false is returned.

See also next(), fileName(), filePath(), and fileInfo().

QString QDirIterator::next ()

Advances the iterator to the next entry, and returns the file path of this new entry. If hasNext() returns false, this function does nothing, and returns a null QString.

You can call fileName() or filePath() to get the current entry file name or path, or fileInfo() to get a QFileInfo for the current entry.

See also hasNext(), fileName(), filePath(), and fileInfo().

QString QDirIterator::path () const

Returns the base directory of the iterator.
posted on 2011-12-02 00:19 逛奔的蝸牛 閱讀(6981) 評論(0)  編輯 收藏 引用 所屬分類: Qt
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲免费视频一区二区| 久久久夜色精品亚洲| 欧美日韩在线精品| 9国产精品视频| 一区二区三区av| 国产欧美一区二区精品性| 久久国产精品一区二区三区四区 | 久久精品国产精品| 欧美亚洲综合久久| 在线播放中文一区| 亚洲人成在线播放| 国产精品高潮呻吟久久| 久久全球大尺度高清视频| 免费成人你懂的| 在线视频精品一| 午夜久久一区| 亚洲国产一区二区a毛片| 亚洲最黄网站| 国产一区二区激情| 亚洲国产岛国毛片在线| 国产精品久久久久久一区二区三区| 久久爱www久久做| 欧美电影打屁股sp| 亚洲欧美日韩电影| 麻豆国产va免费精品高清在线| 亚洲视频在线观看三级| 久久精品国产99精品国产亚洲性色| 亚洲欧洲美洲综合色网| 亚洲制服av| 最新日韩欧美| 午夜免费久久久久| 一区二区三区 在线观看视频 | 91久久嫩草影院一区二区| 国产精品一区二区三区久久| 欧美国产日韩二区| 国产欧美一区二区三区久久人妖| 亚洲激情网站| 在线免费观看日本欧美| 亚洲欧美中文字幕| 国产精品99久久久久久白浆小说| 久久蜜桃香蕉精品一区二区三区| 亚洲在线一区| 欧美福利视频网站| 美女网站久久| 狠狠色噜噜狠狠狠狠色吗综合| 99视频在线观看一区三区| 亚洲激情黄色| 久久久亚洲成人| 久久久久国产精品一区二区| 欧美丝袜一区二区三区| 亚洲黄色片网站| 亚洲高清视频一区二区| 久久久精品动漫| 久久成人国产| 国产欧美高清| 一区二区三区四区五区精品| 一本不卡影院| 欧美日韩国产在线| 亚洲美女区一区| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 久久久亚洲欧洲日产国码αv| 欧美伊人久久| 国产夜色精品一区二区av| 亚洲欧美激情诱惑| 欧美一区二视频| 国产精品一区在线观看你懂的| 亚洲视屏一区| 欧美在线播放| 国模私拍一区二区三区| 久久精品视频播放| 麻豆成人在线| 91久久久久久国产精品| 欧美精品一区三区| 日韩视频一区二区三区在线播放免费观看 | 久久一区视频| 国产精品乱码一区二区三区 | 久久久久久电影| 国产欧美精品一区| 欧美一区二区三区四区在线观看地址 | 一区二区冒白浆视频| 欧美日韩国产成人在线免费| 一区二区不卡在线视频 午夜欧美不卡在 | 国产自产女人91一区在线观看| 欧美中文字幕| 欧美电影专区| 一区二区欧美在线| 国产精品r级在线| 欧美一区二区精美| 欧美黑人国产人伦爽爽爽| 一区二区三区三区在线| 国产精品一区二区在线| 久久综合99re88久久爱| 日韩视频在线观看免费| 欧美自拍偷拍| 亚洲精品久久在线| 国产欧美大片| 欧美韩日高清| 午夜精品在线| 国产欧美日本一区视频| 久久久亚洲人| 亚洲婷婷在线| 欧美高清视频| 欧美亚洲综合网| 最新亚洲激情| 国产日韩一区| 欧美日韩免费观看中文| 久久久www免费人成黑人精品| 亚洲美女av在线播放| 久久人人爽人人爽| 亚洲图片欧洲图片日韩av| 伊人久久大香线| 国产精品美女午夜av| 欧美国产日韩视频| 久久精品男女| 午夜国产精品视频| 亚洲伦理自拍| 欧美黄色网络| 久久免费视频在线观看| 亚洲免费影院| 中国av一区| 亚洲人成在线影院| 99天天综合性| 欧美激情一区| 久久夜色精品国产| 久久国产欧美日韩精品| 亚洲欧美日韩国产| 亚洲小视频在线观看| 99精品国产在热久久| 在线高清一区| 黄色成人av在线| 国内精品久久久久久久影视麻豆 | 亚洲伦理在线| 亚洲大胆美女视频| 国语精品中文字幕| 国产亚洲成av人片在线观看桃| 欧美色偷偷大香| 欧美日韩一区二| 欧美日韩免费看| 欧美日韩的一区二区| 欧美精品日本| 欧美日韩午夜激情| 欧美性色视频在线| 欧美午夜精品理论片a级按摩| 欧美日韩国产精品一区| 欧美日韩免费视频| 国产精品国产三级国产专播精品人| 欧美日韩免费网站| 国产精品成人观看视频国产奇米| 欧美午夜精品久久久久免费视| 欧美日韩在线播放一区二区| 欧美亚州在线观看| 国产精品一区二区久久| 国产午夜精品麻豆| 国际精品欧美精品| 亚洲国产99精品国自产| 亚洲精品乱码久久久久| 亚洲深爱激情| 欧美影片第一页| 老司机精品久久| 亚洲国产日韩一区二区| 99国产精品| 校园激情久久| 欧美肥婆在线| 国产精品每日更新在线播放网址| 国产欧美日韩免费| 亚洲国产电影| 亚洲性感激情| 快she精品国产999| 亚洲国产综合在线| 亚洲专区国产精品| 麻豆freexxxx性91精品| 欧美天天综合网| 精品99视频| 亚洲午夜电影| 久久综合精品国产一区二区三区| 亚洲国产精品成人综合色在线婷婷 | 亚洲精品123区| 亚洲无限av看| 另类尿喷潮videofree| 亚洲精品久久视频| 欧美一区免费| 欧美日韩人人澡狠狠躁视频| 国内精品久久久久久久影视蜜臀 | 亚洲日本中文字幕区| 亚洲制服少妇| 欧美激情一区二区三区| 午夜在线一区| 欧美日韩精品一区二区| 精品91视频| 亚洲视频免费在线观看| 日韩一级二级三级| 欧美专区在线播放| 欧美日韩亚洲在线| 怡红院精品视频| 亚洲欧美日韩视频一区| 国内精品久久久久久| 亚洲图片在线| 91久久国产自产拍夜夜嗨| 午夜在线视频观看日韩17c| 欧美日韩视频专区在线播放 |