我目前正在寻找一种解决方案来查找我正在查看的目录中已添加、删除、更改或重命名的文件。
我在 Windows 7 上使用 C++ QT 5.1.1。但是,“相对”的系统独立解决方案会很好。我查看了 QT,它只提供了一个 DirectoryWatcher,它会告诉我目录是否发生了变化——不是——发生了什么变化。(我需要什么部分)。POCO 在其文件系统区域提供相同的功能。Boost 似乎也不支持这一点。
在 MSDN 中:http: //msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.created (v=vs.110).aspx
取自示例:
// Define the event handlers.
static void OnChanged( Object^ /*source*/, FileSystemEventArgs^ e )
{
// Specify what is done when a file is changed, created, or deleted.
Console::WriteLine( "File: {0} {1}", e->FullPath, e->ChangeType );
}
static void OnRenamed( Object^ /*source*/, RenamedEventArgs^ e )
{
// Specify what is done when a file is renamed.
Console::WriteLine( "File: {0} renamed to {1}", e->OldFullPath, e->FullPath );
}
有没有办法在我的 QT 应用程序中使用它或更“自然”的 C++ 方法?
所有的帮助都是值得的。非常感谢。