Ruby 2.6.0 リファレンスマニュアル > ライブラリ一覧 > stringioライブラリ > StringIOクラス > read_nonblock

instance method StringIO#read_nonblock

read_nonblock(maxlen, outbuf = nil, exception: true) -> String | nil[permalink][rdoc]

StringIO#readに似ていますが、 exception オプションに false を指定すると EOFError を発生させず nil を返します。

[PARAM] len:
読み込みたい長さを整数で指定します。StringIO#read と同じです。
[PARAM] outbuf:
読み込んだ文字列を出力するバッファを文字列で指定します。指定した文字列オブジェクトがあらかじめ length 長の領域であれば、余計なメモリの割当てが行われません。指定した文字列の長さが length と異なる場合、その文字列は一旦 length 長に拡張(あるいは縮小)されたあと、実際に読み込んだデータのサイズになります。IO#read と同じです。
[PARAM] exception:
false を指定した場合、既に EOF に達していれば EOFError の代わりに nil を返します。
[EXCEPTION] EOFError:
文字列の終端に達した場合に発生します。