Hi all
I am using a windows service that monitor a log files directory (using filesyswatcher) in c#.
In this LogFile Directory Some of the textfile appended new datas line by line.
How i read the only new appended datas from these textfiles
Please give me a solution.
Thanks
Anup

Reading Newly added line from textfile
twistedinferno
FileStream file = new FileStream( "logfile.txt", FileMode.Open, FileAccess.Read)
file.Seek( previousEndPosition)
TextReader reader = new StreamReader( file);
while( (line = reader.ReadLine) != null)
{
...
}
previousEndPosition = file.Position;
mhammingh
Here is some old code of me that I once used to read lines from a logfile:
System.IO.FileSystemWatcher k_Watcher;
long k_Position = 0;
System.IO.FileStream k_File_Stream;
System.IO.StreamReader k_Stream_Reader;
private void k_Watcher_Start()
{
if (k_Watcher.EnableRaisingEvents == false)
{
k_File_Stream = new System.IO.FileStream(@"F:\Program Files\Ryzom\save\log_kaetemi.txt", System.IO.FileMode.Open, System.IO.FileAccess.Read);
k_Stream_Reader = new System.IO.StreamReader(k_File_Stream);
k_Position = k_File_Stream.Length;
k_Stream_Reader.Close();
k_File_Stream.Close();
k_Watcher.EnableRaisingEvents = true;
}
}
private void k_Watcher_End()
{
k_Watcher.EnableRaisingEvents = false;
}
private void k_Watcher_Changed(object sender, System.IO.FileSystemEventArgs e)
{
try
{
k_File_Stream = new System.IO.FileStream(e.FullPath, System.IO.FileMode.Open, System.IO.FileAccess.Read);
k_Stream_Reader = new System.IO.StreamReader(k_File_Stream);
if (k_Position < k_File_Stream.Length)
{
k_File_Stream.Position = k_Position;
k_Watcher_NewData(k_Stream_Reader.ReadToEnd());
k_Position = k_File_Stream.Position;
}
else
{
k_Position = k_File_Stream.Length;
}
k_Stream_Reader.Close();
k_File_Stream.Close();
}
catch
{
k_InfoData.Text = "BUG AT: k_Watcher_Changed";
}
}
private void k_Watcher_NewData(string k_Data)
{
}