gets

ReferenceTOPKeywords

コマンド名

gets - チャネルから1行読み込みます。

構文

gets channelId ?varName ?

解説

このコマンドはchannelIdから次の行を読み、行終端文字まで(ただし行終端文字は含まない)行の内容すべてを返します。行終端文字は破棄されます。 

ChannelId はTclの標準のチャネル( stdoutstderr )のようなオープンされているチャネル識別 子でなければなりません。 opensocketコマンドによって返されるチャネル識別 子、 Tcl拡張に提供されたチャネル作成コマンドの結果などです。チャネルは入力用に オープンされていなければなりません。

varNameが省略される場合、行はコマンドの結果として返されます。一方、varNameが指定される場合、名前varNameの変数に行は入れられ、 戻り値は返された文字の数になります。

行の終端を探しているうちにファイル終端になる場合、このコマンド はファイル終端までの利用可能な入力を全部返します。channelIdが非ブロックモードで、それに1行分の入力がなければ、このコ マンドは空文字列を返し、いかなる入力も消費しません。 varNameが指定され、ファイル終端あるいは非ブロックモードでのデータ不足によりvarNameに空文字列が返される場合、戻り値の数は-1となります。 varNameが指定されない場合、ファイル終端であるか、行が不完全であるか、あるいは行終端文字だけからなる入力行であるかに係わらず、同じ結果 が返されます。 eoffblockedコマンドはこれらの3つのケースを識別 するために使えます。

参照

file, eof, fblocked, Tcl_StandardChannels

キーワード

blocking, channel, end of file, end of line, line, nonblocking, read


Copyright © 1993 The Regents of the University of California. Copyright © 1994-1996 Sun Microsystems, Inc. Copyright © 1995-1997 Roger E. Critchlow Jr.