Си шарп console writeline

Консольный ввод/вывод и форматирование

В консольных приложениях не обойтись без методов класса Console.
И главные из них: string Console.ReadLine() и void Console.WriteLine(). По сути мы можем вводить только строку, а для ввода числа необходимо преобразовать введенную строку в число соответствующего формата методами класса Convert.

Рассмотрим примеры стандартных действий:

// Подсказка - приглашение к диалогу Console.Write("Ваше имя: "); // Ввод строки string name = Console.ReadLine(); // Приветствие + подсказка Console.Write("Привет, " + name + "\nВведите Ваш рост в см: "); // Ввод числа. Чтобы сразу получить число, используйте методы класса Convert double height = Convert.ToDouble(Console.ReadLine())/100; name = "Петр 1"; double height_P = 2.04; if (height < height_P) Console.WriteLine(name + " был чуть выше Вас ростом!"); else Console.WriteLine("Не всякие императоры обладали высоким ростом!"); int a = 13; // Составные строки из строковых констант, переменных и выражений Console.WriteLine("Сторона квадрата: " + a + " площадь: " + a * a); Console.WriteLine("Имя: " + name + " Рост: " + height_P + " м");

Вывод через подстановку переменных в фигурные скобки

Console.WriteLine("Имя: Рост: м", name, height_P);

Использование интерполяции. Символ $ перед » … «. Добавлено в последних версиях языка, наиболее изящный способ вывода:

Console.WriteLine($"Имя: Рост: м");

Вывод чисел с округлением по формату и без:

double e = Math.E; // Константа класса Math Console.WriteLine("e = | | | ", e, e, e, e);

Для форматирования целочисленных значений применяется описатель «d». Число после описателя указывает, сколько цифр будет в числовом значении. Если в исходном числе цифр меньше, то к нему добавляются нули.

int number = 314; string result = String.Format("", number); Console.WriteLine(result); string result1 = String.Format("", number); Console.WriteLine(result1);

Форматирование дробных чисел.
Для форматирования дробных чисел используется описатель F, число после которого указывает, сколько знаков будет использоваться после разделителя между целой и дробной частью. Если исходное число — целое, то к нему добавляются разделитель и нули.

int number2 = 23; string result2 = String.Format("", number2); Console.WriteLine(result2); // 23,00 double number3 = 45.08; string result3 = String.Format("", number3); Console.WriteLine(result3); // 45,0800 double number4 = 25.07; // вывод с округлением string result4 = String.Format("", number4); Console.WriteLine(result4); // 25,1

Формат процентов. Описатель «P» задает отображение процентов. Используемый с ним числовой спецификатор указывает, сколько знаков будет после запятой:

decimal number5 = 0.314158m; Console.WriteLine("", number5);

Настраиваемые форматы.
Используя знак #, можно настроить формат вывода. Например, нам надо вывести некоторое число в формате телефона +х (ххх)ххх-хх-хх:

long number6 = 19876543210; string result6 = String.Format("", number6); Console.WriteLine(result6);

Метод ToString() не только получает строковое описание объекта, но и может осуществлять форматирование. Он поддерживает те же описатели, что используются в методе Format:

long number7 = 19876543210; Console.WriteLine(number7.ToString("+# (###) ###-##-##"));// +1 (987) 654-32-10 Console.ReadKey();

Результат выполнения программы должен выглядеть так:

Ваше имя: Сергей Привет, Сергей Введите Ваш рост в см: 202 Петр 1 был чуть выше Вас ростом! Сторона квадрата: 13 площадь: 169 Имя: Петр 1 Рост: 2,04 м Имя: Петр 1 Рост: 2,04 м Имя: Петр 1 Рост: 2,04 м e = 2,7 | 2,72 | 2,718 | 2,71828182845905 314 0314 23,00 45,0800 25,1 31,4% +1 (987) 654-32-10 +1 (987) 654-32-10

NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.

Читайте также:  Оператор присваивания питон пример

Источник

C#. Урок 3. Консольный ввод\вывод

Follow us on Google Plus Follow us on rss

Backend-разработка и создание утилит командной строки невозможно без консольного ввода\вывода. В рамках данной статьи будут рассмотрены методы класса Console для чтения и записи информации в консоль.

Исходный код примеров из этой статьи можете скачать из нашего github-репозитория.

Консольный ввод\вывод

Все приложения условно можно разделить на две группы: консольные и с графическим интерфейсом пользователя. Ко второй группе относится большая часть приложений, с которыми работают пользователи в операционной системе Windows, на смартфонах и в вебе. Под консольными будем понимать приложения, которые запускаются через терминал (командную строку), их взаимодействие с пользователем происходит в текстовом режиме. Практически все приложения, которые запускаются на стороне сервера можно отнести к этой группе. Для организации ввода\вывода информации при работе с консолью в C# используется класс Console.

Класс Console. Вывод данных в консоль

Класс Console содержит методы для работы с консольным вводом\выводом, управлением потоком с ошибками и окном консоли. Начнем с вывода информации в консоль, для решения этой задачи класс Console предоставляет два метода: Write и WriteLine.

Для знакомства с методами класса Console создайте в удобном для вас каталоге проект с именем CSharpLesson3:

> dotnet new console -o CSharpLesson3

Метод Write

Метод Write – направляет в стандартный выходной поток текстовое представление переданного в него объекта. Дополнительно, предоставляет возможность задать форматирование.

Откройте файл Program.cs в созданном ранее проекте и добавьте в метод Main следующие строки, демонстрирующие работу с методом Write:

// Примеры работы с методом Write без форматирования Console.Write("Текущая дата: "); Console.Write(DateTime.Now); Console.Write("\n"); Console.Write($"Текущая дата: \n"); // Примеры работы с методом Write с использованием форматирования Console.Write("Текущая дата: \n", DateTime.Now); Console.Write("Число: \n", 123.456789);

Более подробно про форматирование будет написано в уроке, посвященном работе со строками.

Читайте также:  Выравнивание justify в html

Сохраните документ, откройте консоль, перейдите в каталог с проектом и выполните команду:

Результат работы программы будет выглядеть примерно следующим образом:

Текущая дата: 16.10.2020 11:48:28 Текущая дата: 16.10.2020 11:48:28 Текущая дата: 16.10.2020 11:48:28 Текущая дата: 1,234568E+002

Обратите внимание на первые три вызова метода Write, если не поставить символ перевода строки, то данные будут выдаваться в одну строку друг за другом, это не всегда удобно. Если требуется, чтобы вывод каждый раз осуществлялся с новой строки, то воспользуйтесь методом WriteLine.

Метод WriteLine

Метод WriteLine записывает указанные данные в выходной поток и добавляет символ перевода строки. Добавьте в программу следующие строки:

Console.WriteLine("Текущая дата: "); Console.WriteLine(DateTime.Now);

Теперь надпись “Текущая дата:” и дата со временем будут выведены в разных строках.
WriteLine (также как Write) может принимать не только строковые значения, но и переменные разных типов:

DateTime nowDate = DateTime.Now; string someText = "Сегодня"; int number = 924; Console.WriteLine(nowDate); Console.WriteLine(someText); Console.WriteLine(number);

Удобным и наглядным способом вывода значений переменных в консоль с дополнительным текстовым пояснением является использование строковой интерполяции:

Запустите проект и в консоли увидите результат выполнения программы:

Сегодня 26.08.2020 11:53:44. Число: 924

Прием интерполяции позволяет внутри строки, используя фигурные скобки, указывать имена переменных, которые будут заменены значениями. Перед такой строкой ставится знак $.
Методы WriteLine и Write позволяют использовать форматирование:

Console.WriteLine(":, Число: ", nowDate, someText, number);

В этом случае методу передается ряд параметров, первый – это строка, в которой, в фигурных скобках, указывается порядок подстановки значений переменных, далее, через запятую, перечисляются переменные, значения которых нужно подставить, здесь важен порядок: нумерация начинается с 0.

Класс Console. Чтение данных из консоли

В классе Console, помимо рассмотренных выше методов вывода в консоль, присутствуют методы для считывания вводимых данных из консоли.

Читайте также:  Ioc containers in java

Метод Read

Метод Read возвращает числовой код последнего введенного символа во входном потоке, если символ введен не был, то будет возвращен код -1. Для завершения работы метода, после ввода символа необходимо нажать клавишу “Enter”. Рассмотрим работу с методом Read на примере:

Console.WriteLine("Нажмите любую клавишу, а затем Enter"); int key1 = Console.Read(); Console.WriteLine($"Код нажатой клавиши: "); Console.WriteLine("Символьное представление: " + Convert.ToChar(key1));

Если после надписи “Нажмите любую клавишу, а затем Enter” будет введено более одного символа, то Read вернет только первый.

Для представления кода в виде символа необходимо переменную key1 привести к типу Char, для этого можно воспользоваться методом Convert.ToChar().

Метод ReadLine

Метод ReadLine возвращает введенную строку символов до нажатия клавиши “Enter”. Добавим несколько строк в файл с исходным кодом, для демонстрации работы с методом ReadLine :

Console.WriteLine("Введите ваше имя, а затем нажмите Enter"); string name = Console.ReadLine(); Console.WriteLine($"Привет, !");

Если необходимо получить с консоли численные данные, то следует воспользоваться методами из класса Convert для приведения типа String к соответствующему числовому типу:

Console.WriteLine("Сколько вам лет?"); int age = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Ваш рост в см?"); int height = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Привет , вам уже полных лет и ваш рост см", name, age, height);

Метод ReadKey

ReadKey возвращает объект класса ConsoleKeyInfo, в который помещается информация о нажатой клавише. Этот метод, как правило, используют для остановки выполнения программы или чтобы получить ответ от пользователя. Добавим строки для работы с ReadKey:

Console.WriteLine("Нажмите любую клавишу:"); var key2 = Console.ReadKey(); Console.WriteLine(key2.Key); Console.WriteLine(key2.KeyChar);

Исходный код примеров из этой статьи можете скачать из нашего github-репозитория.

Источник

Оцените статью