Condividi tramite


TextReader.ReadLine Metodo

Definizione

Legge una riga di caratteri dal lettore di testo e restituisce i dati come stringa.

public:
 virtual System::String ^ ReadLine();
public virtual string ReadLine ();
public virtual string? ReadLine ();
abstract member ReadLine : unit -> string
override this.ReadLine : unit -> string
Public Overridable Function ReadLine () As String

Restituisce

Riga successiva dal lettore oppure null se tutti i caratteri sono stati letti.

Eccezioni

Si è verificato un errore di I/O.

La memoria disponibile non è sufficiente per l’allocazione di un buffer per la stringa restituita.

Il numero di caratteri nella riga successiva è maggiore di Int32.MaxValue

Commenti

Una riga è definita come una sequenza di caratteri seguita da un ritorno a capo (0x000d), da un avanzamento riga (0x000a), da un ritorno a capo seguito da un avanzamento riga, Environment.NewLineo da un marcatore di fine flusso. La stringa restituita non contiene il ritorno a capo finale o l'avanzamento riga. Il valore restituito è null se è stata raggiunta la fine del flusso di input.

Se il metodo genera un'eccezione OutOfMemoryException , la posizione del lettore nell'oggetto sottostante Stream è avanzata dal numero di caratteri che il metodo è stato in grado di leggere, ma i caratteri già letti nel buffer interno ReadLine vengono eliminati. Poiché la posizione del lettore nel flusso non può essere modificata, i caratteri già letti sono irreversibili e possono essere accessibili solo reinizializzando l'oggetto TextReader . Se la posizione iniziale all'interno del flusso è sconosciuta o il flusso non supporta la ricerca, è necessario reinizializzare anche l'oggetto sottostante Stream .

Per evitare una situazione di questo tipo e produrre codice affidabile, è consigliabile usare il Read metodo e archiviare i caratteri letti in un buffer preallocato.

La classe TextReader è astratta. Di conseguenza, non verrà creata un'istanza nel codice. Per un esempio di utilizzo del ReadLine metodo , vedere il StreamReader.ReadLine metodo .

Si applica a

Vedi anche