МетодRead() возвращает очередной символ, считанный с консоли. Он ожидает до тех пор, пока пользователь не нажмет клавишу, а затем возвращает результат. Возвращаемый символ относится к типуintи поэтому должен быть приведен к типуchar.Если при вводе возникает ошибка, то методRead() возвращает значение -1. Этот метод сгенерирует исключениеIOExceptionпри неудачном исходе операции ввода. Ввод с консоли с помощью методаRead() буферизуется построчно, поэтому пользователь должен нажать клавишу , прежде чем программа получит любой символ, введенный с консоли.

Ниже приведен пример программы, в которой методRead() используется для считывания символа, введенного с клавиатуры.

// Считать символ, введенный с клавиатуры.

using System;

class КЫп {

static void Main() { char ch;

Console.Write("Нажмите клавишу, а затем — : ");

ch = (char) Console.Read(); // получить значение типа char Console.WriteLine("Вы нажали клавишу: " + ch) ;

}

}

Вот, например, к какому результату может привести выполнение этой программы.

Нажмите клавишу, а затем — : t Вы нажали клавишу: t

Необходимость буферизировать построчно ввод, осуществля^емый с консоли посредством методаRead (), иногда может быть досадным препятствием. Ведь при нажатии клавиши в поток ввода передается последовательность символов перевода каретки и перевода строки. Более того, эти символы остаются во входном буфере до тех пор, пока они не будут считаны. Следовательно, в некоторых приложениях приходится удалять эти символы (путем их считывания), прежде чем приступать к следующей операции ввода. Впрочем, для чтения введенных с клавиатуры символов без построчной буферизации, можно воспользоваться рассматриваемым далее методомReadKey().Длд считывания строки символов служит приведенный ниже методReadLine ().

static string ReadLine()

Символы считываются методомReadLine() до тех пор, пока пользователь не нажмет клавишу , а затем этот метод возвращает введенные символы в виде

объекта типаstring.Кроме того, он сгенерирует исключениеIOExceptionпри неудачном исходе операции ввода.

Ниже приведен пример программы, в которой демонстрируется чтение строки из потокаConsole . Inс помощью методаReadLine ().

// Ввод с консоли с помощью метода ReadLine().

using System;

class ReadString { static void Main() { string str;

Console.WriteLine("Введите несколько символов."); str = Console.ReadLine();

Console.WriteLine("Вы ввели: " + str);

}

}

Выполнение этой программы может привести, например, к следующему результату.

Введите несколько символов.

Это просто тест.

Перейти на страницу:

Похожие книги