10

如果指定目录(或子文件夹)中的文件没有每次都获取所有修改时间,有什么方法可以触发操作?我问是因为我必须现场检查

4

2 回答 2

13

您需要使用 QFileSystemWatcher。

更重要的是,这是您需要连接的信号:

void QFileSystemWatcher::fileChanged(const QString & path) [信号]

当指定路径的文件被修改、重命名或从磁盘中删除时,会发出此信号。

另请参见 directoryChanged()。

所以,你可以在你的类或函数中写这样的东西:

...
QFileSystemWatcher watcher;
watcher.addPath("/My/Path/To/The/File");

QObject::connect(&watcher, SIGNAL(fileChanged(const QString&)), receiver, SLOT(handleFileChanged(const QString&)));
...
于 2014-04-05T16:05:29.210 回答
3

您正在寻找QFileSystemWatcher

于 2014-04-05T16:05:13.827 回答