TextReader.ReadLine Metoda

Definice

Přečte řádek znaků ze čtečky textu a vrátí data jako řetězec.

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

Návraty

Další řádek od čtenáře nebo null pokud byly přečtené všechny znaky.

Výjimky

Dojde k vstupně-výstupní chybě.

Nedostatek paměti pro přidělení vyrovnávací paměti pro vrácený řetězec.

Počet znaků na dalším řádku je větší než Int32.MaxValue

Poznámky

Čára je definována jako posloupnost znaků následovaných návratem na začátek řádku (0x000d), informačním kanálem řádku (0x000a), návratem na začátek řádku následovaným kanálem Environment.NewLineřádku nebo koncem vstupu čtenáře. Vrácený řetězec neobsahuje ukončující návrat na začátek řádku nebo odřádkování. Vrácená hodnota je null , pokud byl dosažen konec vstupu.

Pokud vstup končí sekvencí nového řádku, nebude vrácen žádný další prázdný řádek. Například vstup obsahující "line1\nline2\n" vytváří stejné dva řádky ("line1" a "line2") jako vstup obsahující "line1\nline2".

Pokud metoda vyvolá OutOfMemoryException výjimku, pozice čtenáře v jeho podkladovém zdroji je rozšířena počtem znaků, které metoda dokázala přečíst, ale znaky, které už byly načteny do interní ReadLine vyrovnávací paměti, jsou zahozeny. Vzhledem k tomu, že umístění čtenáře v podkladovém zdroji nelze resetovat, znaky, které už byly přečteny, nejsou obnovitelné a lze k němu přistupovat pouze opětovnou inicializací objektu TextReader . Pokud je počáteční pozice v podkladovém zdroji neznámá nebo zdroj nepodporuje přemístění, musí být také znovu inicializován.

Pokud se chcete takové situaci vyhnout a vytvořit robustní kód, měli byste použít metodu Read a uložit znaky čtení do předem nepřiřazené vyrovnávací paměti.

Třída TextReader je abstraktní třída. Proto ji v kódu neodstraňujete. Příklad použití ReadLine metody najdete v StreamReader.ReadLine metodě.

Platí pro

Viz také