TextReader.ReadLine Metoda

Definicja

Odczytuje wiersz znaków z czytnika tekstu i zwraca dane jako ciąg.

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

Zwraca

Następny wiersz z czytnika lub null jeśli wszystkie znaki zostały odczytane.

Wyjątki

Wystąpi błąd We/Wy.

Za mało pamięci, aby przydzielić bufor dla zwracanego ciągu.

Element TextReader jest zamknięty.

Liczba znaków w następnym wierszu jest większa niż Int32.MaxValue

Uwagi

Wiersz jest definiowany jako sekwencja znaków, po których następuje powrót karetki (0x000d), kanał informacyjny wiersza (0x000a), powrót karetki, po którym następuje kanał informacyjny wiersza, Environment.NewLinelub znacznik końca strumienia. Zwracany ciąg nie zawiera powrotu karetki zakończenia ani kanału informacyjnego wiersza. Wartość zwracana jest null , jeśli osiągnięto koniec strumienia wejściowego.

Jeśli metoda zgłasza OutOfMemoryException wyjątek, pozycja czytelnika w bazie Stream jest zaawansowana przez liczbę znaków, które metoda mogła odczytać, ale znaki, które zostały już odczytane do buforu wewnętrznego ReadLine , są odrzucane. Ponieważ nie można zmienić położenia czytnika w strumieniu, znaki, które zostały już odczytane, są nieodwracalne i można uzyskać do nich dostęp tylko przez ponowne inicjowanie TextReader obiektu. Jeśli pozycja początkowa w strumieniu jest nieznana lub strumień nie obsługuje wyszukiwania, bazowe Stream również należy ponownie zainicjować.

Aby uniknąć takiej sytuacji i utworzyć niezawodny kod, należy użyć Read metody i zapisać znaki odczytu w buforze wstępnie przydzielony.

Klasa TextReader jest klasą abstrakcyjną. W związku z tym, nie tworzy się obiektu w kodzie. Aby zapoznać się z przykładem użycia ReadLine metody, zobacz metodę StreamReader.ReadLine .

Dotyczy

Zobacz też