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

最佳答案

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

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


然后,您可以根据需要使用slot参数。在这里,我只是将其打印到标准输出:

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


请参阅文档以获取更多详细信息:


  void QFileSystemWatcher::fileChanged(const QString & path) [signal]
  
  当指定路径上的文件被修改,重命名或从磁盘中删除时,将发出此信号。


不知道您对Qt信号/插槽系统有多熟悉,但如果还不够,请同样进行以下操作:

Qt Signals & Slots

关于c++ - 如何从QFileSystemWatcher`directoryChanged`事件获取更改的文件名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23179484/

10-12 17:07