-
READ
Variable = READ [ # Stream ] AS Datatype Variable = READ [ # Stream , ] Length |
特定のデータ型を読み取る
最初の構文は、ストリームStreamを、Datatype引数で型が指定されているバイナリデータとして読み取ります。 バイナリ表現は、WRITE命令で使用されるものです。
ストリームが指定されていない場合は、標準入力が使用されます。
返されるデータ型は、NULL、ブール、バイト、短、整数、長、ポインタ、単一、浮動、日付、文字列、バリアント、任意の配列、コレクション、または構造体のいずれかです。
文字列を読み込むときは、バイナリデータ表現で指定されているように、文字列の長さをストリームデータの文字列の内容の前に置く必要があります。 |
ストリームの内容を解釈できない場合は、エラーが発生します。
この命令は、データの読み取りにストリームのバイトオーダーを使用します。 |
文字列の内容を読む
2番目の構文は、ストリームStreamからLength引数で指定されたバイト数を読み取り、それを文字列として返します。
Lengthが負の場合、最大で( - Length)バイトがストリームの最後まで読み込まれます。
ストリームが指定されていない場合は、標準入力が使用されます。
Gambas 2との互換性
WRITE #Stream、ExpressionはGambas 2.0のExpressionのバイナリ形式を書き込みます。 Gambas 3.0ではExpressionを文字列として書きます。 そのため、Gambasプロジェクトを2.0から3.0に変換するときにはすべてのWRITE命令をチェックし、必要に応じてASデータ型を指定する必要があります。 デフォルトでは、コンパイラーは互換性があるため、古いREAD構文と古いWRITE構文をサポートします。 READ / WRITE構文を書き換える場所を検出したい場合は、 " - no-old-read-write-syntax"フラグを使用してプロジェクトを手動でコンパイルできます。 2番目の構文が使用されている場合、WRITEのLength引数は必須になります。 |
ポインタをストリームとして使用することはできなくなりました。 2番目の構文を使用する場合は、WRITEの代わりにMEMORY命令を使用してメモリストリームを作成します。 |
See also
コメント
最新を表示する
NG表示方式
NGID一覧