System.Classes.TReader.ReadListEnd
Delphi
procedure ReadListEnd; inline;
C++
void __fastcall ReadListEnd();
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | System.Classes.pas System.Classes.hpp |
System.Classes | TReader |
説明
値の種類を示すマーカーのうち、リストの終了を示すものをリーダー オブジェクトのストリームから読み取ります。
ReadListEnd は、項目のリストを反復処理する他のメソッドで使用されて、読み取り中の項目グループの終了を通知します。
ReadListEnd では、ストリーム内の現在の Position にある次のデータ項目が、WriteListEnd メソッドで書き込まれるリスト終了マーカー vaNull
かどうかを確認します。
ReadListEnd では、ReadValue を呼び出して、値の種類を示すマーカーが vaNull
かどうかを確認します。そうであれば、ReadListEnd は成功し、ストリーム内の現在位置をそのマーカーの次へ進めます。
ReadValue で取得されたものが、値の種類を示すマーカーとしては正しいが vaNull
ではない場合、ReadListEnd では、取得したマーカーで指定されるバイト数の分だけ読み飛ばし、EReadError 例外を発生させます。
ReadListEnd の呼び出しの前には、読み取りループが実行されます。このループは、EndOfList メソッドの戻り値が True
のときに終了しますが、このときは、ストリーム内の次の項目がリスト終了マーカーであることを示します。
ReadListEnd の呼び出しは、それより前に呼び出された ReadListBegin に対応している必要があります。