4D v16.3RECEIVE PACKET |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
RECEIVE PACKET
RECEIVE PACKET
RECEIVE PACKET コマンドは、シリアルポートまたはドキュメントから文字を読み込みます。 docRefを指定した場合、このコマンドは Open document, Create document または Append document で開かれたドキュメントからデータを取得します。docRefを指定しない場合、このコマンドは SET CHANNELコマンドで開かれたシリアルポートかドキュメントからデータを取得します。 読み込み元に関わらず、読み込まれた文字は、テキスト、文字、またはBLOB型のreceiveVar変数に返されます。文字が SEND PACKET コマンドで送信された場合、型はパレットが送信された際の型に対応しなければなりません。 Notes:
特定の文字数まで読み込むためには、numBytesにその数を渡します。receiveVarがテキスト型の場合、一回の呼び出しで、Unicodeモードでは2GB (理論的な値) までのテキストを読み込めます。 特定の文字列(1桁以上の文字で構成される)が現われるまでデータを取り込むには、stopCharにその文字列を渡します(この文字列はreceiveVarに含まれません)。 この場合、stopCharで指定した文字を見つけることが出来なければ:
RECEIVE PACKET の実行中、利用者はCtrl+Alt+Shift (Windows) またはコマンド+Option+Shift (Macintosh)キーを押下することで、割込をかけることが出来ます。割込が発生するとエラー-9994が生成され、 ON ERR CALLでインストールされたエラー処理メソッドでとらえることができます。通常、シリアルポートで通信している場合のみ、割込を処理します。 ドキュメントを読み込む場合、最初のRECEIVE PACKET コマンドは、ドキュメントファイルの先頭から読み込みを開始します。その後のデータ読み込みは、最後に読み込まれたバイトの次から開始します。 Note: このコマンドは、 SET CHANNEL を用いて開かれたドキュメントに対して有効です。一方で、 Open document, Create document または Append documentで開かれたドキュメントに関しては、 Get document position または SET DOCUMENT POSITION コマンドを使用して、次の書き込み (SEND PACKET) や読み込み(RECEIVE PACKET) を行うドキュメント中の位置を取得したり設定したりできます。 ファイルの最後を越えて読み込もうとした場合、 RECEIVE PACKET は、そのポイントまでに読み込んだデータを返し、システム変数OKに1を代入します。その次の RECEIVE PACKET は空の文字列を返し、システム変数OKに0を代入します。 以下の例は、20バイトのデータをシリアルポートから読み込み、変数getTwentyに格納します: RECEIVE PACKET(getTwenty;20) 以下の例は、変数myDocで参照されるドキュメントからデータを読み込み、変数vDataに格納します。ここでは改行が見つかるまで読み込みます: RECEIVE PACKET(myDoc;vData;Char(Carriage return)) 以下の例は、変数myDocで参照されるドキュメントからデータを読み込み、変数vDataに格納します。HTMLタグ</TD>(テーブルセルの終わり)が現われるまでデータを読み込みます: RECEIVE PACKET(myDoc;vData;"</TD>") 以下の例は、ドキュメントファイルから読み込んだデータをフィールドに格納します。データは、固定長で格納されています。このメソッドは、サブルーチンを呼び出してデータの後ろに付随する不要なスペースを取り除きます: $vhDocRef :=Open document("";"TEXT") ` TEXTドキュメントを開く データの終わりのスペースは以下のStripメソッドで取り除きます: For($i;Length($1);1;-1) ` 文字の最後からループ RECEIVE PACKET呼び出し後、エラーなしでパケットを受信すればOKシステム変数に1が、そうでなければ0が設定されます。
参照
Get document position
|
プロパティ
プロダクト: 4D 履歴
変更: 4D v11 SQL タグ BOM ARTICLE USAGE
ランゲージリファレンス ( 4D v16) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||