特定のファイルを監視する小さなアプリケーションがあり、それが変更されるたびに、アプリケーションはループ内でアクションを実行する必要がありますが、何かが関数を複数回起動しています!! これが私のコードです
private void OnChanged(object source, FileSystemEventArgs e)
{
if (e.FullPath == @"C:\test.txt")
{
string textFilePath = @"C:\test.txt";
try
{
using (var streamReader = File.OpenText(textFilePath))
{
var lines = streamReader.ReadToEnd().Split("\r\n".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
foreach (var line in lines)
{
//actions here
}
}
}
catch (Exception)
{
}
}
}
だから、ストリームリーダーが File.OpenText を実行すると、ループで推測しています。何か案は?