Sdílet prostřednictvím


TextReader.ReadToEnd Metoda

Definice

Přečte všechny znaky od aktuální pozice do konce čtečky textu a vrátí je jako jeden řetězec.

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

Návraty

Řetězec, který obsahuje všechny znaky od aktuální pozice do konce čtečky textu.

Výjimky

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

Není dostatek paměti k 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

Pokud metoda vyvolá OutOfMemoryException výjimku, pozice čtenáře v podkladovém Stream objektu je rozšířena o počet znaků, které byla metoda schopna přečíst, ale znaky, které byly již načteny do interní ReadToEnd vyrovnávací paměti, jsou zahozeny. Vzhledem k tomu, že pozici čtenáře v datovém proudu nelze změnit, znaky, které byly již přečteny, jsou neopravitelné a lze k němu získat přístup pouze opětovnou inicializací objektu TextReader. Pokud je počáteční pozice v rámci datového proudu neznámá nebo datový proud nepodporuje hledání, je také nutné znovu inicializovat podklad Stream .

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

Třída TextReader je abstraktní třída. Proto se v kódu nevytvořuje instance. Příklad použití metody najdete v ReadToEndStreamReader.ReadToEnd metodě .

Platí pro

Viz také