Ler em inglês

Compartilhar via


Console.Read Método

Definição

Lê o próximo caractere do fluxo de entrada padrão.

C#
[System.Runtime.Versioning.UnsupportedOSPlatform("android")]
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static int Read();
C#
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public static int Read();
C#
public static int Read();

Retornos

O próximo caractere do fluxo de entrada, ou um negativo (-1), se, no momento, não houver mais caracteres a serem lidos.

Atributos

Exceções

Ocorreu um erro de E/S.

Exemplos

O exemplo a seguir demonstra o Read método.

C#
// This example demonstrates the Console.Read() method.
using System;

class Sample
{
    public static void Main()
    {
    string m1 = "\nType a string of text then press Enter. " +
                "Type '+' anywhere in the text to quit:\n";
    string m2 = "Character '{0}' is hexadecimal 0x{1:x4}.";
    string m3 = "Character     is hexadecimal 0x{0:x4}.";
    char ch;
    int x;
//
    Console.WriteLine(m1);
    do
        {
        x = Console.Read();
        try
            {
            ch = Convert.ToChar(x);
            if (Char.IsWhiteSpace(ch))
               {
               Console.WriteLine(m3, x);
               if (ch == 0x0a)
                   Console.WriteLine(m1);
               }
            else
                {
                    Console.WriteLine(m2, ch, x);
                }
            }
        catch (OverflowException e)
            {
            Console.WriteLine("{0} Value read = {1}.", e.Message, x);
            ch = Char.MinValue;
            Console.WriteLine(m1);
            }
        } while (ch != '+');
    }
}
/*
This example produces the following results:

Type a string of text then press Enter. Type '+' anywhere in the text to quit:

The quick brown fox.
Character 'T' is hexadecimal 0x0054.
Character 'h' is hexadecimal 0x0068.
Character 'e' is hexadecimal 0x0065.
Character     is hexadecimal 0x0020.
Character 'q' is hexadecimal 0x0071.
Character 'u' is hexadecimal 0x0075.
Character 'i' is hexadecimal 0x0069.
Character 'c' is hexadecimal 0x0063.
Character 'k' is hexadecimal 0x006b.
Character     is hexadecimal 0x0020.
Character 'b' is hexadecimal 0x0062.
Character 'r' is hexadecimal 0x0072.
Character 'o' is hexadecimal 0x006f.
Character 'w' is hexadecimal 0x0077.
Character 'n' is hexadecimal 0x006e.
Character     is hexadecimal 0x0020.
Character 'f' is hexadecimal 0x0066.
Character 'o' is hexadecimal 0x006f.
Character 'x' is hexadecimal 0x0078.
Character '.' is hexadecimal 0x002e.
Character     is hexadecimal 0x000d.
Character     is hexadecimal 0x000a.

Type a string of text then press Enter. Type '+' anywhere in the text to quit:

^Z
Value was either too large or too small for a character. Value read = -1.

Type a string of text then press Enter. Type '+' anywhere in the text to quit:

+
Character '+' is hexadecimal 0x002b.

*/

Comentários

O Read método bloqueia seu retorno enquanto você digita caracteres de entrada; ele termina quando você pressiona a Enter tecla. Pressionar Enter acrescenta uma sequência de terminação de linha dependente da plataforma à sua entrada (por exemplo, o Windows acrescenta uma sequência de alimentação de retorno de carro). Chamadas subsequentes para o Read método recuperam um caractere de entrada por vez. Depois que o caractere final é recuperado, Read bloqueia seu retorno novamente e o ciclo se repete.

Importante

O ReadLine método ou a propriedade e ReadKey o KeyAvailable método são preferíveis ao uso do Read método .

Observe que o método não retorna -1, a menos que você execute uma das seguintes ações:

  • Pressione simultaneamente a tecla modificadora e Z a Control tecla de console (Ctrl+Z), que sinaliza a condição de fim do arquivo. Se você estiver no Windows, também deverá pressionar a tecla do Enter console.

  • Pressione uma tecla equivalente que sinaliza a condição de fim do arquivo, como a tecla de função F6 no Windows.

  • Redirecione o fluxo de entrada para uma origem, como um arquivo de texto, que tenha um caractere de fim de arquivo real.

Aplica-se a

Produto Versões
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

Confira também