Вопрос

Я разрабатываю приложение в Какао.Я хочу постоянно проверять, изменено ли содержимое файла в определенном месте или нет (например, FileSystemWatcher в .NET).Пожалуйста, дайте мне решение

Это было полезно?

Решение

Пожалуйста, взгляните на ФСЕвенты.

Другие советы

Как говорит Дидерик, ФСЕвенты — это API Carbon от Apple для прослушивания событий файловой системы.Кто-то создал оболочку Cocoa/Objective-C для FSEvents под названием SCEСобытия это немного проще в использовании.

Другой вариант — пить прямо из пожарного шланга /dev/fsevents.Я работаю над приложением, которое делает именно это, и оно работает очень хорошо.Вы можете получать уведомления, если файл изменяется, удаляется, перемещается, изменяются его атрибуты и т. д.Конечно, это не вариант «Какао», поскольку в основном это код C, но мы используем его в приложении Какао.

FSEvents — это здорово, но они используются для мониторинга папок.Чтобы отслеживать один файл, вам нужно проверить kqueues.Попробуйте «man kqueue» в терминале.

Посмотрите документацию класса NSWorkspace.

Вот пример того, как это сделать с помощью закладок и NSFileManager, чтобы вы могли следить за файлом, если он был перемещен.

https://github.com/ptrsghr/FileWatcher

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top