我目前正在寻找一种解决方案,以便在我正在观看的目录中查找已添加,删除,更改或重命名的文件。
我在Windows 7上使用C ++ QT 5.1.1。但是,“相对”系统独立解决方案会很好。我查看了QT,它只提供了一个DirectoryWatcher,显示我是否更改了目录 - NOT - 改变了什么。 (我需要什么部分)。 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 ++方法?
所有帮助都是适用的。 非常感谢你。