У меня есть файл, содержащий данные, изменения в которых я хотел бы отслеживать, а также добавлять собственные изменения. Думайте как "Tail -f foo.txt".
На основании этого потока , похоже, мне нужно просто создать файловый поток и передать его как писателю, так и читателю. Однако когда читатель достигает конца исходного файла, он не видит обновлений, которые я пишу сам.
Я знаю, что это кажется странной ситуацией ... это скорее эксперимент, чтобы увидеть, можно ли это сделать.
a
b
c
d
e
f
string test = "foo.txt";
System.IO.FileStream fs = new System.IO.FileStream(test, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite);
var sw = new System.IO.StreamWriter(fs);
var sr = new System.IO.StreamReader(fs);
var res = sr.ReadLine();
res = sr.ReadLine();
sw.WriteLine("g");
sw.Flush();
res = sr.ReadLine();
res = sr.ReadLine();
sw.WriteLine("h");
sw.Flush();
sw.WriteLine("i");
sw.Flush();
sw.WriteLine("j");
sw.Flush();
sw.WriteLine("k");
sw.Flush();
res = sr.ReadLine();
res = sr.ReadLine();
res = sr.ReadLine();
res = sr.ReadLine();
res = sr.ReadLine();
res = sr.ReadLine();
После прохождения "f" читатель возвращает null.