るりまサーチ

最速Rubyリファレンスマニュアル検索!
17697件ヒット [101-200件を表示] (0.126秒)

別のキーワード

  1. io popen
  2. io pipe
  3. io each
  4. io each_line
  5. io readlines

ライブラリ

クラス

キーワード

検索結果

<< < 1 2 3 4 ... > >>

IO#read_nonblock(maxlen, outbuf = nil, exception: true) -> String | Symbol | nil (21141.0)

IO をノンブロッキングモードに設定し、 その後で read(2) システムコールにより 長さ maxlen を上限として読み込み、文字列として返します。 EAGAIN, EINTR などは Errno::EXXX 例外として呼出元に報告されます。

...
IO
をノンブロッキングモードに設定し、
その後で read(2) システムコールにより
長さ maxlen を上限として読み込み、文字列として返します。
EAGAIN, EINTR などは Errno::EXXX 例外として呼出元に報告されます。

発生した例外 がErr...
...no::EAGAIN、 Errno::EWOULDBLOCK である場合は、
その例外オブジェクトに IO::WaitReadable が Object#extend
されます。

なお、バッファが空でない場合は、read_nonblock はバッファから読み込みます。この場合、read(2) システムコールは呼ば...
...れません。

このメソッドはノンブロッキングモードにする点を除いて IO#readpartial と
同じであることに注意してください。

バイナリ読み込みメソッドとして動作します。

既に EOF に達していれば EOFError が発生します。た...

IO#write_nonblock(string, exception: true) -> Integer | :wait_writable (21129.0)

IO をノンブロッキングモードに設定し、string を write(2) システムコールで書き出します。

...
IO
をノンブロッキングモードに設定し、string を write(2) システムコールで書き出します。

write(2) が成功した場合、書き込んだ長さを返します。
EAGAIN, EINTR などは例外 Errno::EXXX として呼出元に報告されます。

書き込んだバ...
...ブジェクトに IO::WaitWritable が Object#extend
されます。よって IO::WaitWritable を write_nonblock のリトライが必要
かの判定に用いることができます。

@param string 自身に書き込みたい文字列を指定します。

@param exception false を指定す...
...と、書き込み時に Errno::EAGAIN、Errno::EWOULDBLOCK が発生
する代わりに :wait_writable を返します。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。

@raise Errno::EXXX write(2) が失敗した場合に発生し...

IO#cooked {|io| ... } -> object (21108.0)

cooked モードを有効にして指定されたブロックを評価します。

...す。ブロックを評価した結果を返します。

@raise LocalJumpError ブロックを指定しなかった場合に発生します。

以下の例では、標準入力からエコーバック付きで文字列を一行読み込みます。

require "io/console"
STDIN.cooked(&:gets)...

IO#noecho {|io| ... } -> object (21108.0)

文字入力時のエコーバックを無効に設定してブロックを評価します。

...す。ブロックを評価した結果を返します。

以下の例では、標準入力からエコーバックなしで文字列を一行読み込みます。

require "io/console"
STDIN.noecho(&:gets)

@raise LocalJumpError ブロックを指定しなかった場合に発生します。...

IO#raw(min: 1, time: 0, intr: false) {|io| ... } -> object (21108.0)

raw モード、行編集を無効にして指定されたブロックを評価します。

...シグナルを生成する制御文字が有効になります。端末の制御については、 termios のマニュアル:https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/termios.h.html を参照してください。

@raise LocalJumpError ブロックを指定しなかった場合...
...に発生します。

@raise ArgumentError intr に true または false 以外の値を指定した場合に発生します。

以下の例では、標準入力からエコーバックなしで文字列を一行読み込みます。

require "io/console"
STDIN.raw(&:gets)...

絞り込み条件を変える

IO#ready? -> IO | false | nil (21102.0)

ブロックせずに読み込み可能なら真を、 ブロックしてしまう可能性があるならfalseを返します。

ブロックせずに読み込み可能なら真を、
ブロックしてしまう可能性があるならfalseを返します。

判定不可能な場合は nil を返します。

IO#binmode -> self (21061.0)

ストリームをバイナリモードにします。MSDOS などバイナリモードの存在 する OS でのみ有効です。そうでない場合このメソッドは何もしません。

...ンしかありません。

@raise Errno::EXXX モードの変更に失敗した場合に発生します。

//emlist[例][ruby]{
IO
.open(IO.sysopen("testfile", "w+")) do |io|
io
.binmode? # => false
io
.binmode # => #<IO:fd 8>
io
.binmode? # => true
end
//}

@see c:IO#io_binmode, IO#binmode?...

IO#readpartial(maxlen, outbuf = "") -> String (21059.0)

IO から長さ maxlen を上限として読み込み、文字列として返します。 即座に得られるデータが存在しないときにはブロックしてデータの到着を待ちます。 即座に得られるデータが 1byte でも存在すればブロックしません。

...
IO
から長さ maxlen を上限として読み込み、文字列として返します。
即座に得られるデータが存在しないときにはブロックしてデータの到着を待ちます。
即座に得られるデータが 1byte でも存在すればブロックしません。

...
...動作するよう設計されています。
readpartial がブロックするのは次の全ての条件が満たされたときだけです。
* IO オブジェクト内のバッファが空
* ストリームにデータが到着していない
* ストリームが EOF になっていない...
...EOF になっていれば、例外 EOFError を発生させます。

例えば、パイプに対しては次のように動作します。

r, w = IO.pipe # buffer pipe content
w << "abc" # "" "abc".
r.readpartial(4096)...

IO#close_read -> nil (21057.0)

読み込み用の IO を close します。主にパイプや読み書き両用に作成し た IO オブジェクトで使用します。

...読み込み用の IO を close します。主にパイプや読み書き両用に作成し
IO オブジェクトで使用します。


@raise IOError 自身が読み込み用にオープンされていなければ発生します。

@raise Errno::EXXX close に失敗した場合に発生し...
...ます。

//emlist[例][ruby]{
IO
.popen("/bin/sh","r+") do |f|
f.close_read
# f.readlines # => IOError: not opened for reading
end
//}

@see IO#close, IO#closed?, IO#close_write...
...読み込み用の IO を close します。主にパイプや読み書き両用に作成し
IO オブジェクトで使用します。

既に close されていた場合には単に無視されます。

@raise IOError 自身が読み込み用にオープンされていなければ発生し...
...ます。

@raise Errno::EXXX close に失敗した場合に発生します。

//emlist[例][ruby]{
IO
.popen("/bin/sh","r+") do |f|
f.close_read
# f.readlines # => IOError: not opened for reading
end
//}

@see IO#close, IO#closed?, IO#close_write...

IO#path -> String | nil (21057.0)

IO に関連付けられたパスを返します。IO がパスに関連付けられていない場合は nil を返します。

...
IO
に関連付けられたパスを返します。IO がパスに関連付けられていない場合は nil を返します。

このメソッドが返すパスがファイルシステム上に存在することは保証されていません。

//emlist[例][ruby]{
p STDIN.path...
...# => "<STDIN>"
p IO.new(IO.sysopen("/")).path # => "/"
p IO.new(IO.sysopen("/"), path: "foo").path # => "foo"
//}...

絞り込み条件を変える

IO#to_path -> String | nil (21057.0)

IO に関連付けられたパスを返します。IO がパスに関連付けられていない場合は nil を返します。

...
IO
に関連付けられたパスを返します。IO がパスに関連付けられていない場合は nil を返します。

このメソッドが返すパスがファイルシステム上に存在することは保証されていません。

//emlist[例][ruby]{
p STDIN.path...
...# => "<STDIN>"
p IO.new(IO.sysopen("/")).path # => "/"
p IO.new(IO.sysopen("/"), path: "foo").path # => "foo"
//}...

IO#set_encoding_by_bom -> Encoding | nil (21047.0)

BOM から IO のエンコーディングを設定します。

...BOM から IO のエンコーディングを設定します。

自身が BOM から始まる場合、BOM を読み進めて外部エンコーディングをセットし、セットしたエンコーディングを返します。
BOM が見つからなかった場合は nil を返します。

...
....open("bom.txt", "rb") do |io|
p io.set_encoding_by_bom #=> #<Encoding:UTF-8>
str = io.read
p str #=> "abc"
p str.encoding #=> #<Encoding:UTF-8>
end

File.write("nobom.txt", "abc")
File.open("nobom.txt", "rb") do |io|
p io.set_encoding_by_bom #=>...
<< < 1 2 3 4 ... > >>