DFileWatcherManager 类可以帮助管理一系列 DFileWatcher 文件监视器,并在文件变动时发送信号通知.
示例代码:
#include "dfilewatchermanager"
#include <QCoreApplication>
#include <QTemporaryFile>
#include <QDebug>
#include <QTimer>
DCORE_USE_NAMESPACE
int main(int argc, char **argv)
{
QCoreApplication app(argc, argv);
QTemporaryFile tmpfile1;
tmpfile1.open();
QFile file1( tmpfile1.fileName());
QTemporaryFile tmpfile2;
tmpfile2.open();
QFile file2( tmpfile2.fileName());
manager.add(tmpfile1.fileName());
manager.add(tmpfile2.fileName());
qDebug() << "文件发生变动:" << value;
});
qDebug() << "文件被删除:" << value;
});
file1.open(QIODevice::WriteOnly|QIODevice::Text);
file1.write("test");
file1.close();
file2.open(QIODevice::WriteOnly|QIODevice::Text);
file2.write("test");
file2.close();
qDebug() << manager.watchedFiles();
qDebug() << "---------------------------";
app.processEvents();
manager.removeAll();
qDebug() << manager.watchedFiles();
return app.exec();
}
DFileWatcherManager 类可以帮助管理一系列 DFileWatcher 文件监视器,并在文件变动时发送信号通知.
void fileDeleted(const QString &filePath)
当路径filePath对应的文件被删除时发送此信号.
void fileModified(const QString &filePath)
当路径filePath对应的文件被修改时发送此信号.
上面代码演示了如何使用 DFileWatcherManager 类来监控文件变动和清除文件变动的监控. 具体可以参照源码中的example文件夹中的文件变动监控例子.