TextReader.ReadToEnd メソッド

定義

現在の位置からテキスト リーダーの末尾までのすべての文字を読み取り、1 つの文字列として返します。

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

返品

現在位置からテキスト リーダーの末尾までのすべての文字を含む文字列。

例外

I/O エラーが発生しました。

TextReader は閉じられます。

返された文字列にバッファーを割り当てるためのメモリが不足しています。

次の行の文字数が Int32.MaxValue より大きい

注釈

メソッドが OutOfMemoryException 例外をスローした場合、基になる Stream 内のリーダーの位置は、メソッドが読み取ることができた文字数だけ進みますが、内部 ReadToEnd バッファーに既に読み込まれた文字は破棄されます。 ストリーム内のリーダーの位置を変更できないため、既に読み取られた文字は回復不能であり、 TextReaderを再初期化することによってのみアクセスできます。 ストリーム内の初期位置が不明な場合、またはストリームがシークをサポートしていない場合は、基になる Stream も再初期化する必要があります。

このような状況を回避し、堅牢なコードを生成するには、 Read メソッドを使用し、事前に割り当てられたバッファーに読み取り文字を格納する必要があります。

TextReader クラスは抽象クラスです。 そのため、コードではインスタンス化しません。 ReadToEnd メソッドの使用例については、StreamReader.ReadToEnd メソッドを参照してください。

適用対象

こちらもご覧ください