QFileSystemWatcher类提供了一个接口用于监视文件和目录修改。
通过监控一个指定路径的列表,监视文件系统中文件和目录的变更。
调用addPath()函数可以监控一个特定的文件或目录,监控多个路径,可以使用addPaths()。通过使用removePath()和removePaths()函数来移除现有路径。检测添加到它上面的每个路径,已添加的文件可以使用的files()函数进行访问,目录的路径可以使用directories()函数来获取。
当文件被修改、重命名或移除时,会发出fileChanged()信号。当目录或它的内容被修改或移除后,会发射directoryChanged()信号。需要注意的是,当文件被重命名或移除后,或者目录移除后,QFileSystemWatcher都会停止监控。
实例:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDir>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
// 将监视器的信号和自定义的槽进行关联
connect(&myWatcher, &QFileSystemWatcher::directoryChanged,