IO

提供基本输入/输出功能的 IO 类。

超类

包含模块

方法

binmode

将串流转换成二进制模式。恢复成一般模式的唯一方法是重新打开串流。

返回 self。

close

关闭输入输出端口。关闭失败会抛出 Errno::EXXX 异常。

返回 nil。

each_line {|line| ... }

经过输入输出端口,逐行读取。

返回 self。

each_byte {|ch| ... }

经过输入输出端口,逐字节读取。

返回 self。

eof?

当输入输出流到达文件末端时,返回 true。

pos

返回文件指针的当前位置。

pos=n

将文件指针移至指定位置。

read([length])

读取并返回 length 长度的字节的字符串。若省略 length 则会读取直至文件末端的所有数据。

若是 IO 已经到达文件末端,就返回 nil 。

读取数据失败会抛出 Errno::EXXX 异常, length 为负值则会抛出 ArgumentError 异常。

readlines([rs])

读取所有数据,并返回一个由 一行 内容组成的数组。若是 IO 已经到达文件末段,则返回空数组 []。

「行」是由参数 rs 所指定的字符串做断句,rs 的默认值为 "\n"。

若指定 nil 为 rs 参数,则不会进行分行。若指定空字符串 "" ,则会把连续的分行符当作断句(段落模式)。

write(str)

str 输出至输入输出端口。若 str 不识字符串,则会尝试使用 to_s 将其转换为字符串。

返回实际输出的字节数。输出失败会抛出 Errno::EXXX 异常。