TextReader.ReadLine Methode

Definitie

Leest een regel tekens uit de tekstlezer en retourneert de gegevens als een tekenreeks.

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

Retouren

De volgende regel van de lezer of null als alle tekens zijn gelezen.

Uitzonderingen

Er treedt een I/O-fout op.

Er is onvoldoende geheugen om een buffer toe te wijzen voor de geretourneerde tekenreeks.

Het aantal tekens in de volgende regel is groter dan Int32.MaxValue

Opmerkingen

Een regel wordt gedefinieerd als een reeks tekens gevolgd door een regelterugloop (0x000d), een regelinvoer (0x000a), een regelterugloop gevolgd door een regelinvoer of Environment.NewLinehet einde van de invoer van de lezer. De tekenreeks die wordt geretourneerd, bevat niet de retour- of regelinvoer voor het einde van het regelterugloop. De retourwaarde is null als het einde van de invoer is bereikt.

Als de invoer eindigt op een nieuwe regelreeks, wordt er geen extra lege regel geretourneerd. Invoer die "line1\nline2\n" bijvoorbeeld dezelfde twee regels ("line1" en "line2") produceert als invoer met "line1\nline2".

Als de methode een OutOfMemoryException uitzondering genereert, wordt de positie van de lezer in de onderliggende bron geavanceerd door het aantal tekens dat de methode heeft kunnen lezen, maar de tekens die al in de interne ReadLine buffer zijn gelezen, worden verwijderd. Omdat de positie van de lezer in de onderliggende bron niet opnieuw kan worden ingesteld, zijn de tekens die al zijn gelezen, onherstelbaar en kunnen ze alleen worden geopend door het TextReader object opnieuw te initialiseren. Als de oorspronkelijke positie binnen de onderliggende bron onbekend is of de bron geen ondersteuning biedt voor het verplaatsen, moet de onderliggende bron ook opnieuw worden geïnitialiseerd.

Als u een dergelijke situatie wilt voorkomen en robuuste code wilt produceren, moet u de Read methode gebruiken en de leestekens opslaan in een vooraf toegewezen buffer.

De TextReader klasse is een abstracte klasse. Daarom maakt u deze niet instantiëren in uw code. Zie de methode voor een voorbeeld van het gebruik van de ReadLineStreamReader.ReadLine methode.

Van toepassing op

Zie ook