我需要为特定类型的文件(pdf)观看指定的文件夹,并仅在文件“已创建”或“重命名”时获取通知。 我尝试了许多Obj c包装器,如SCEvents,UKKQueue等,我无法获得通知委托中引发的事件类型(“创建”或“重命名”)。我只是得到一个标志/一些#。我也尝试过没有引发回调的FSEventStream。为此提供了以下网址:OSX FSEventStreamEventFlags not working correctly。
在SCEvents中,我有下面的委托,它没有告诉我事件的类型 -
- (void)pathWatcher:(SCEvents *)pathWatcher eventOccurred:(SCEvent *)event {
NSLog(@"%@", event);
}
获取以下日志 -
2014-02-27 16:41:59.342 PMLauncher6[5187:303] <SCEvent { eventId = 661674, eventPath = /Users/Test, eventFlag = 67584 } >
任何人都有同样或更好的方式来满足要求,请提出建议。
由于
答案 0 :(得分:2)
尝试NSWorkspace
- noteFileSystemChanged:
。
文档并没有详细说明它,而是作为“通知NSWorkspace对象文件系统在指定路径上发生了变化”的通知。它应该符合您的需求。