如何从QFileSystemWatcher“directoryChanged”事件中获取更改后的文件名

How to obtain the changed file names from the QFileSystemWatcher `directoryChanged` event

本文关键字:获取 文件名 事件 QFileSystemWatcher directoryChanged      更新时间:2023-10-16

如何从QFileSystemWatcher directoryChanged事件中获取更改后的文件名?

如果您对文件名更感兴趣,则需要将插槽连接到fileChanged()信号,而不是directoryChanged()

connect(&myFileSystemWatcher, SIGNAL(fileChanged(const QString&)), SLOT(handleFileChanged(const QString&)));

然后,您可以根据需要使用slot参数。在这里,我只是把它打印到stdout:

void handleFileChanged(const QString &path)
{
    qDebug() << path;
}

有关更多详细信息,请参阅文档:

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

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

不确定你对Qt信号/插槽系统有多熟悉,但如果还不够,也请浏览一下:

Qt信号&插槽