Ruby 教程 之 Ruby 文件的输入与输出 9
Ruby 文件的输入与输出
Ruby 提供了一整套 I/O 相关的方法,在内核(Kernel)模块中实现。所有的 I/O 方法派生自 IO 类。
类 IO 提供了所有基础的方法,比如 read、 write、 gets、 puts、 readline、 getc 和 printf。
本章节将讲解所有 Ruby 中可用的基础的 I/O 函数。如需了解更多的函数,请查看 Ruby 的 IO 类。
读取和写入文件
用于简单 I/O 的方法也可用于所有 file 对象。所以,gets 从标准输入读取一行,aFile.gets 从文件对象 aFile 读取一行。
但是,I/O 对象提供了访问方法的附加设置,为我们提供了便利。
each_byte 方法
该方法属于类 File。方法 each_byte 是个可以迭代字符串中每个字符。请看下面的代码实例:
实例
!/usr/bin/ruby
aFile = File.new("input.txt", "r+")
if aFile
aFile.syswrite("ABCDEF")
aFile.rewind
aFile.each_byte {|ch| putc ch; putc ?. }
else
puts "Unable to open file!"
end
字符一个接着一个被传到变量 ch,然后显示在屏幕上,如下所示:
A.B.C.D.E.F.s. .a. .s.i.m.p.l.e. .t.e.x.t. .f.i.l.e. .f.o.r. .t.e.s.t.i.n.g. .p.u.r.p.o.s.e...