На этом шаге мы рассмотрим организацию такого ввода.
Информацию можно вводить не только через окно с полем ввода, но и через консольные устройства: набирая значение с помощью клавиатуры (с отображением в консольном окне). Далее мы рассмотрим пример, в котором показано, как в программе может быть реализован консольный ввод. Программа похожа на программу из предыдущего шага: пользователь вводит текст, и затем появляется сообщение, содержащее этот текст. Но в предыдущем примере текст вводился в поле диалогового окна, и сообщение появлялось в диалоговом окне. Теперь для ввода и вывода информации мы используем консольное окно. Нам понадобится статический метод ReadLine() из класса Console для считывания введенного пользователем текста. Для вывода сообщений в консольное окно мы используем статические методы Write() и WriteLine() из класса Console. Различие между методами Write() и WriteLine() в том, что методом Write() в консольном окне отображается значение аргумента (например, текст) и курсор остается в той же строке. То есть следующее сообщение появится в той же строке, в которую выводилось предыдущее сообщение. Методом WriteLine() отображается значение аргумента в консольном окне, и по завершении отображения выполняется переход к новой строке: следующее сообщение появится в новой строке. Далее рассмотрим программный код.
В данном случае мы создаем консольный проект. Для компилирования и запуска программы на выполнение используем команду Start Without Debugging (Запуск без отладки) из меню
Debug (Отладка) или нажимаем комбинацию клавиш Ctrl+F5.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace pr12_1 { class Program { static void Main(string[] args) { // Текстовая переменная: string name; // Заголовок консольного окна: Console.Title = "Давайте познакомимся..."; // Сообщение в консоли: Console.Write("Как Вас зовут?"); // Считывание текста: name = Console.ReadLine(); // Еще одна текстовая переменная: string txt = "Очень приятно, " + name + "!"; // Заголовок консольного окна: Console.Title = "Знакомство состоялось"; // Сообщение в консоли: Console.WriteLine(txt); } } }
В программе используется класс Console, поэтому мы подключаем пространство имен System, к которому относится этот класс.
Также мы используем класс String из пространства имен System для реализации текстовых переменных. Но вместо названия класса String при объявлении текстовых переменных
задействован идентификатор string как псевдоним для инструкции System.String. В последующих примерах мы также в основном будем использовать идентификатор string.
В главном методе программы командой string name объявляется текстовая переменная name. Эта переменная используется для запоминания текста, введенного пользователем. Командой
Console.Title = "Давайте познакомимся...";
У класса Console есть свойство Title, определяющее название, отображаемое в консольном окне. По умолчанию при запуске программы на выполнение в названии консольного окна отображается путь к файлу программы. Присвоив значение свойству, мы определяем название, которое отображается в строке названия консольного окна. Более детально свойства обсуждаются в контексте изучения классов и объектов.
Командой
Console.Write("Как Вас зовут?");

Рис.1. Сообщение в консольном окне и ожидание ввода пользователя
Программа ожидает, пока пользователь введет значение (текст). Следует ввести текст (имя пользователя) и нажать клавишу Enter. На рисунке 2 показана ситуация, когда пользователь ввел текст, но еще не нажал клавишу Enter.

Рис.2. Консольное окно с введенным текстом перед нажатием клавиши Enter
Считывание введенного пользователем текста выполняется командой
name = Console.ReadLine();
string txt = "Очень приятно, " + name + "!";
Инициализация переменной означает первое (после объявления или во время объявления) присваивание значения этой переменной.
После этого командой
Console.Title = "Знакомство состоялось";
Console.WriteLine(txt);

Рис.3. Консольное окно после отображения сообщения с текстом, введенным пользователем
Сообщение Для продолжения нажмите любую клавишу..., которое появляется в консольном окне в последней строке, не имеет отношения к программе и добавляется автоматически.
В этом и рассмотренном на предыдущем шаге примере с вводом значения через окно с полем ввода мы считывали текст. По часто возникает необходимость считывать значения и других типов.
На следующем шаге мы рассмотрим считывание чисел.