View on GitHub

aulas-programacao-csharp

Materiais de Aula - Programação de Computadores com C#

Entrada de dados via teclado

📽 Veja esta vídeo-aula no Youtube

Aguardar o usuário pressionar qualquer tecla

Console.ReadKey

Console.ReadKey();

Para não exibir a tecla pressionada:

Console.ReadKey(true);

Para guardar informações sobre a tecla pressionada:

ConsoleKeyInfo teclaPressionada = Console.ReadKey(true);
Console.Write("Pressione uma tecla...");
var tecla = Console.ReadKey(true);

Console.Write("\nFoi pressionado ");

bool pressionadoAlt = (tecla.Modifiers & ConsoleModifiers.Alt) != 0;
bool pressionadoShift = (tecla.Modifiers & ConsoleModifiers.Shift) != 0;
bool pressionadoControl = (tecla.Modifiers & ConsoleModifiers.Control) != 0;

if (pressionadoAlt) Console.Write("ALT+");
if (pressionadoShift) Console.Write("SHIFT+");
if (pressionadoControl) Console.Write("CTRL+");
Console.WriteLine(tecla.Key);

Aguardar o usuário digitar uma sequência de teclas finalizadas por ENTER

Console.ReadLine

Console.ReadLine();

Guardar o conteúdo digitado em uma variável

string textoDigitado = Console.ReadLine()!;

Exibir o conteúdo da variável

Console.Write("Digite seu nome: ");
string textoDigitado = Console.ReadLine()!;
Console.Write("Olá, ");
Console.Write(textoDigitado);
Console.WriteLine("!");
Console.WriteLine("Pressione uma tecla para continuar...");
Console.ReadKey();

Resultado

PS C:\Users\ermogenes\Desktop\code\ExemploConsole> dotnet run
Digite seu nome: Ermogenes
Olá, Ermogenes!
Pressione uma tecla para continuar...
PS C:\Users\ermogenes\Desktop\code\ExemploConsole>

Limpar o buffer de teclado

while (Console.KeyAvailable) Console.ReadKey(true);