System.Classes.TReader.ReadVariant

提供: RAD Studio API Documentation
移動先: 案内検索

Delphi

function ReadVariant: Variant;

C++

System::Variant __fastcall ReadVariant();

プロパティ

種類 可視性 ソース ユニット
function public
System.Classes.pas
System.Classes.hpp
System.Classes TReader


説明

リーダー オブジェクトのストリームから Variant 型の値を読み取って返します。

ReadVariant は、リーダーの現在の Position にあるタグ付きの Variant 型値を読み取るために他のリーダー メソッドで使用されるヘルパ メソッドです。

ReadVariant では、NextValue を呼び出して値の種類を示すマーカーを読み取ります。取得した "値の種類" に応じて、ReadVariant メソッドは次のように動作します。

  • 値の種類が vaNull の場合、ReadVariantNull 値を返します。
  • 値の種類が vaFalse の場合、ReadVariantFalse を返します。
  • 値の種類が vaTrue の場合、ReadVariantTrue を返します。
  • 値の種類が vaInt8 の場合、ReadVariantReadInteger を呼び出して、リーダーの現在の Position にある Int8 型整数値を読み取り、取得した値を Shortint 型の値として返します。
  • 値の種類が vaInt16 の場合、ReadVariantReadInteger を呼び出して、リーダーの現在の Position にある Int16 型整数値を読み取り、取得した値を Smallint 型の値として返します。
  • 値の種類が vaInt32 の場合、ReadVariantReadInteger を呼び出して、リーダーの現在の Position にある Int32 型整数値を読み取り、取得した値を Integer 型の値として返します。
  • 値の種類が vaInt64 の場合、ReadVariantReadInt64 を呼び出して、リーダーの現在の Position にある Int64 型整数値を読み取り、取得した値を Int64 型の値として返します。
  • 値の種類が vaExtended の場合、ReadVariantReadFloat を呼び出して、リーダーの現在の Position にある Extended 型浮動小数点値を読み取り、取得した値を返します。
  • 値の種類が vaSingle の場合、ReadVariantReadSingle を呼び出して、リーダーの現在の Position にある Single 型浮動小数点値を読み取り、取得した値を返します。
  • 値の種類が vaDouble の場合、ReadVariantReadDouble を呼び出して、リーダーの現在の Position にある Double 型浮動小数点値を読み取り、取得した値を返します。
  • 値の種類が vaCurrency の場合、ReadVariantReadCurrency を呼び出して、リーダーの現在の Position にある Currency 型値を読み取り、取得した値を返します。
  • 値の種類が vaDate の場合、ReadVariantReadDate を呼び出して、リーダーの現在の Position にある TDateTime 型値を読み取り、取得した値を返します。
  • 値の種類が vaStringvaLStringvaWStringvaUTF8String のいずれかの場合、ReadVariantReadString を呼び出して、リーダーの現在の Position にある文字列型値を読み取り、取得した値を String 型の値として返します。
  • 値の種類が vaBinary の場合、ReadVariantRead を呼び出して、リーダーの現在の Position にある値を読み取り、取得した値を返します。
  • 上記以外の場合、ReadVariant では EReadError 例外が発生します。

ReadVariant では、直前に読み取ったバイト値の次へリーダーの Position を進めます。

関連項目