Несмотря на свою родину (M$ Вынь) в C# присутствует возможность изменения устройств стандартного ввода/вывода на консоль.
Вот, собственно, пример:
TextWriter consoleOut = Console.Out; // Дескриптор устройства вывода на консоль
TextWriter fileOut = new StreamWriter("file.txt"); // Дескриптор вывода в файл
Console.WriteLine("Это выводится на экран");
Console.WriteLine("Это тоже выводится на экран");
Console.SetOut(fileOut); // Изменяем устройство вывода на файл
Console.WriteLine("А это выводится в файл");
Console.SetOut(consoleOut); // Возвращаем устройсво вывода на консоль
Console.WriteLine("И снова выводится на экран");
fileOut.Close();
TextReader consoleIn = Console.In; // дескриптор устройства ввода в консоль
TextReader fileIn = new StreamReader("file.txt"); // дескрптор файла ввода
Console.WriteLine("Введите что-нибудь:");
string text = Console.ReadLine();
Console.WriteLine("Это было введено с клавиатуры: {0}", text);
Console.SetIn(fileIn); // Изменяем устройство ввода на файл
text = Console.ReadLine();
Console.WriteLine("А это было введено из файла: {0}", text);
Console.SetIn(consoleIn); // Возвращаем усройство ввода на консоль
Скачать пример
|
|
Webmoney Z163628999150, R617151845974
|