End of Life Ruby 3.1 has reached end of life and gets no more fixes. Switch to Ruby 4.0 →
class method
IO.binwrite
IO.binwrite(name, string, [offset]) → integer
IO.binwrite(name, string, [offset], open_args) → integer
File.binwrite(name, string, [offset]) → integer
File.binwrite(name, string, [offset], open_args) → integer
io.c
View on GitHub ↗
static VALUE
rb_io_s_binwrite(int argc, VALUE *argv, VALUE io)
{
return io_s_write(argc, argv, io, 1);
}
Same as IO.write except opening the file in binary mode and ASCII-8BIT encoding ("wb:ASCII-8BIT").
If name starts with a pipe character ("|") and the receiver is the IO class, a subprocess is created in the same way as Kernel#open, and its output is returned. Consider to use File.binwrite to disable the behavior of subprocess invocation.
See also IO.read for details about name and open_args.