IO

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

超类

包含模块

方法

binmode

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

返回 self。

close

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

返回 nil。

each_line {|line| ... }

从 IO 端口逐行读取。

返回 self。

each_byte {|ch| ... }

从 IO 端口逐字节读取。

返回 self。

eof?

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

pos

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

pos=n

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

read([length])

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

若是 IO 已经到达 EOF,返回 nil。

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

readlines([rs])

读取所有数据,并返回一个由每行内容为元素的数组。若是 IO 已经到达 EOF,则返回空数组 []。

行的分隔符是参数 rs 指定的字符串,rs 的默认值为 "\n"。

rs 指定为 nil,则不会进行分行。若指定空字符串 "" ,则会把连续的换行视为分隔符(段落模式)。

write(str)

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

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