Подключиться к файлу, читать новый контент в режиме реального времени
Как бы я подключился к файлу, который в данный момент используется другой программой, которая постоянно записывает в нее файл? Допустим, есть текстовый файл с 10 строками. Когда я запускаю свое приложение, оно должно обнаруживать и читать любой контент оттуда каждый раз, когда пишущая программа сохраняет его. Можно ли это сделать без постоянной проверки размера файла / даты?
2 ответа
Вы можете отслеживать папку на предмет изменений, используя API ReadDirectoryChangesW.
Отслеживайте последнюю позицию, в которую вы читали, и когда вы получите уведомление об изменении для этого файла, прочитайте оттуда до конца файла (в том виде, в каком он есть в настоящее время).
Пример использования API ReadDirectoryChangesW приведен здесь:
Что-то похожее на это: Мониторинг файлов, похожих на System Internal /Microsoft FileMon/Process Monitor