AnyOne697, я не знаю, является стандартный поток вывода C# стандартным потоком вывода ОС, но вообще, делайте как в Unix (о боже, я употребил "C#" и "делайте как в Unix" в одном предложении...):
program1 > file.txt // перенаправление вывода program1 в file.txt
program1 < file.txt // перенаправление ввода program1 из file.txt
program1 | program2 // перенаправление вывода program1 на ввод program2
А если так и по кругу:
program1 < file.txt | program2 > file.txt
То program1 будет читать из file.txt, отдавать свой вывод вводу program2, которая свой вывод будет сливать в file.txt. Если повторить по кругу, то получится общение.
Поясню. Есть файл file.txt:
Код
hello, world!
how are you?
my friend hello
jumpjet
i like sault crackers
hello to sault crackers producers
black is white. red is white. black is red.
hello to everyone!
Запускаем такую комманду (в unix):
cat < file.txt | grep 'hello' > file.txt
После выполнения получаем
Код
hello, world!
my friend hello
hello to sault crackers producers
hello to everyone!
То есть cat прочитала file.txt на свой вывод, вывод пошёл на ввод grep, которая вывела все строки, содержащие 'hello' на свой вывод, который пошёл обратно в file.txt
Винда вроде тоже так умеет.
Удачи!