2013-03-06 4 views
0

Моя предыдущая запись была нечитабельной, поэтому. Я пытаюсь прочитать последнюю строку текстового файла каждый раз, когда он изменяется. код у меня есть,Чтение последней строки текстового файла после того, как FileSystemWatcher обнаруживает изменение

private void fileSystemWatcherMCH1_Changed(object sender, System.IO.FileSystemEventArgs e) 
{ 
    string machState = File.ReadAllLines(@"C:\Users\sgarner\Documents\PROTOMET SHOP FLOOR\Machines\MACHINE_1.txt").Last(); 
    btnMCH1.Text = machState; 
    btnMCH1.BackColor = Color.Blue; 
} 

Если бы я только запустить btnMCH1.BackColor = Color.Blue; это работает. Но я не могу прочитать переменную из текстового файла. Я уверен, что мне не хватает чего-то простого. Спасибо,

ответ

0

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

private void fileSystemWatcherMCH1_Changed(object sender, System.IO.FileSystemEventArgs e) 
{ 
    try 
    { 
     string machState = File.ReadAllLines(@"C:\Users\sgarner\Documents\PROTOMET SHOP FLOOR\Machines\MACHINE_1.txt").Last(); 
     btnMCH1.Text = machState; 
     btnMCH1.BackColor = Color.Blue; 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show(ex.Messasge); 
    } 
}