C # получать уведомления, когда другой процесс вносит изменения в текстовый файл - PullRequest
3 голосов
/ 15 января 2012

Я хотел бы получать уведомления в своем приложении C #, когда другой процесс вносит изменения в определенный текстовый файл.

Причина этого заключается в том, что я запускаю стороннее средство из своего приложения, чтобы получить некоторую информациюоб устройстве.Этот инструмент сохраняет текущее состояние устройства в INI-файл.Это занимает некоторое неопределенное время, но я хочу отреагировать и прочитать информацию о состоянии, как только она станет доступной.

Как я могу это сделать?

Ответы [ 2 ]

3 голосов
/ 15 января 2012

Вы можете использовать класс System.IO.FileSystemWatcher. Примерно так:

string fileToWatch = @"C:\MyFile.txt";
fileSystemWatcher = new FileSystemWatcher(fileToWatch);

void fileSystemWatcher_Changed(object sender, FileSystemEventArgs e)
{
    Debug.WriteLine(e.Name +  " has changed");
}
2 голосов
/ 15 января 2012

Вы можете отслеживать изменения файлов, используя System.IO.FileSystemWatcher

Также см. Уведомление об изменении файла? для получения дополнительной информации.

...