TextReader.ReadLine Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Lê uma linha de caracteres do leitor de texto e devolve os dados como uma cadeia.
public:
virtual System::String ^ ReadLine();
public virtual string ReadLine();
abstract member ReadLine : unit -> string
override this.ReadLine : unit -> string
Public Overridable Function ReadLine () As String
Devoluções
A próxima linha do leitor, ou null se todas as personagens já foram lidas.
Exceções
Ocorre um erro de E/S.
Não há memória suficiente para alocar um buffer para a cadeia devolvida.
Está TextReader fechado.
O número de caracteres na linha seguinte é maior do que o Int32.MaxValue
Observações
Uma linha é definida como uma sequência de caracteres seguida por um retorno de carro (0x000d), um retorno de linha (0x000a), um retorno de carro seguido de um avanço de linha, Environment.NewLine, ou o fim da entrada do leitor. A cadeia que é devolvida não contém o retorno do carro de terminação nem o avanço da linha. O valor de retorno é null se o fim da entrada tiver sido alcançado.
Se a entrada terminar com uma sequência de nova linha, não é devolvida nenhuma linha vazia adicional. Por exemplo, a entrada que contém "line1\nline2\n" produz as mesmas duas linhas ("line1" e "line2") que a entrada que contém "line1\nline2".
Se o método lançar uma OutOfMemoryException exceção, a posição do leitor na sua fonte subjacente é avançada pelo número de caracteres que o método conseguiu ler, mas os caracteres que já foram lidos no buffer interno ReadLine são descartados. Como a posição do leitor na fonte subjacente não pode ser reiniciada, os caracteres já lidos são irrecuperáveis e só podem ser acedidos reinicializando o TextReader objeto. Se a posição inicial dentro da fonte subjacente for desconhecida ou esta não suportar reposicionamento, a fonte subjacente também precisa de ser reinicializada.
Para evitar tal situação e produzir código robusto, deve usar o Read método e armazenar os caracteres de leitura num buffer pré-alocado.
A TextReader disciplina é uma disciplina abstrata. Portanto, não o instancias no teu código. Para um exemplo de utilização do ReadLine método, veja o StreamReader.ReadLine método.