c++ - Qt:检查文件夹中的文件是否已更改

标签 c++ qt qtcore qfile qfilesystemwatcher

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

最佳答案

您需要使用 QFileSystemWatcher。

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

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

This signal is emitted when the file at the specified path is modified, renamed or removed from disk.

See also directoryChanged().

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

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

QObject::connect(&watcher, SIGNAL(fileChanged(const QString&)), receiver, SLOT(handleFileChanged(const QString&)));
...

关于c++ - Qt:检查文件夹中的文件是否已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22883218/

相关文章:

Qt5 Micro 构建为 8MB Mb 嵌入式

c++ - Qt 创建文件夹之间的链接

c++ - 重载运算符矩阵,读取访问冲突

c++ - 在 iOS 中,如何从 viewController 以外的类更改按钮的文本?

c++ - 添加到 ImageList 后是否需要销毁图标?

c++ - 为什么数组的类型推导优先于对数组的引用优先指针?

c++ - QWebEnginePage 中的透明背景

qt - QML 将信号连接到函数

c++ - 如果打开设备,QSerialPort 会导致程序停止(无限循环?)

c++ - 如何使用带有俄语字母的 QLineEdit 蒙版?