Ниже приведен простой пример сервисной программы ввода с клавиатуры и вывода на диск набранных текстовых строк, сохраняемых в файлеtest. txt.Набираемый тест вводится до тех пор, пока в нем не встретится строка "стоп". Для символьного вывода в файл в этой программе используется объект классаFileStream,заключенный в оболочку классаStreamWriter.
// Простая сервисная программа ввода с клавиатуры и вывода на диск,
// демонстрирующая применение класса StreamWriter.
using System; using System.10;
class KtoD {
static void Main { string str;
FileStream fout;
// Открыть сначала поток файлового ввода-вывода, try {
fout = new FileStream("test.txt", FileMode.Create);
catch(IOException exc) {
Console.WriteLine("Ошибка открытия файла:\п" + exc.Message); return ;
}
// Заключить поток файлового ввода-вывода в оболочку класса StreamWriter. StreamWriter fstr_out = new StreamWriter(fout) ;
try {
Console.WriteLine("Введите текст, а по окончании — 'стоп'."); do {
Console.Write (": "); str = Console.ReadLine;
if(str != "стоп") {
str = str + "\r\n"; // добавить новую строку fstr_out.Write(str);
}
} while(str != "стоп");
} catch(IOException exc) {
Console.WriteLine("Ошибка ввода-вывода:\n" + exc.Message);
} finally {
fstr_out.Close;
}
}
}
В некоторых случаях файл удобнее открывать средствами самого классаStreamWriter.Для этого служит один из следующих конструкторов:
StreamWriter(string
StreamWriter(string
где
Ниже приведен вариант представленной ранее сервисной программы ввода с клавиатуры и вывода на диск, измененный таким образом, чтобы открывать выходной файл средствами самого классаStreamWriter.
// Открыть файл средствами класса StreamWriter.
using System; using System.10;
class KtoD {
static void Main { string str;
StreamWriter fstr_out = null; try {
// Открыть файл, заключенный в оболочку класса StreamWriter.
fstr_out = new StreamWriter("test.txt");
Console.WriteLine("Введите текст, а по окончании — 'стоп'."); do {
-Console.Write (": "); str = Console.ReadLine ;
if(str != "стоп") {