このマニュアルは既にメンテナンスが終了したバージョンの Ruby を対象としています。 最新版のマニュアルへ

Ruby 3.1 リファレンスマニュアル

instance method IO::Buffer#write

write(io, length) -> IntegerRuby 3.1 から[permalink][rdoc][edit]

バッファの内容を io に書き込みます。

書き込むのは、少なくとも length バイトです。バッファに続きがあれば、それより多く書き込むことがあります。

書き込みは io の現在の位置から行われ、io の位置は書き込んだ分だけ進みます。

[PARAM] io:
書き込み先の IO を指定します。
[PARAM] length:
書き込む最小のバイト数を整数で指定します。
[RETURN]
書き込んだバイト数を返します。書き込みに失敗した場合は errno を負にした整数を返します。例外は発生しません。
[EXCEPTION] ArgumentError:
offset と length の合計がバッファの大きさを超える場合に発生します。
buf = IO::Buffer.for("Ruby!")
File.open("test.txt", "w") do |io|
  p buf.write(io, 5) # => 5
end
p File.read("test.txt") # => "Ruby!"

[SEE_ALSO] IO::Buffer#pwrite, IO::Buffer#read