QFileSystemWatcher :: files()不返回文件列表

时间:2014-10-17 11:23:23

标签: c++ qt qfilesystemwatcher

我使用QFileSystemWatcher来观察我在watcher->addPath("myPath")方法中设置的目录中的更改。

当我致电watcher->directories()时,我看到myPath

但是当我打电话给watcher->files()时,我什么也没看到。当我使用这个方法时,我以为我会在目录中看到文件。

如何查看目录中的文件?

1 个答案:

答案 0 :(得分:2)

QFileSystemWatcher旨在观察文件系统中的更改。

要获取目录中的文件列表,请使用QDir::entryList

示例:

QString files = QDir("c:\\").entryList(QDir::NoDotAndDotDot);

如果您需要观察目录中的更改(文件添加/重命名或删除的事件),请将addPath与目录一起使用,然后收听directoryChanged信号。
如果您需要观看文件内容更改,请使用addPath以及文件的完整路径并收听fileChanged信号。

相应地directories返回您添加的目录列表,files返回您添加的文件列表。