file = File.new(“testfile”, “r”) # … process the filefile.closetestfile是想要操作的文件名,”r”说明了文件的操作模式为读取。可以使用”w”表示写入,”rw”表示读写。 最后要记得关闭打开的文件,确保所有被缓冲的数据被写入文件,所有相关的资源被释放。 也可以使用File.open来打开文件,open和new的不同是open可以使用其后的代码块而new方法则返回一个File类的实例。 File.open(“testfile”, “r”) do |file| # … process the fileendopen操作的另一个优点是处理了异常,如果处理一个文件发生错误抛出了 异常的话,那么open操作会自动关闭这个文件,下面是open操作的大致实现:class Filedef File.open(*args) result = f = File.new(*args) if block_given?beginresult = yield fensure f.closeendendreturn resultendend对于文件的路径,Ruby会在不同的操作系统间作转换。例如,在Windows下,/ruby/sample/test.rb会被转化为\ruby\sample\test.rb。当你使用字符串表示一个Windows下的文件时,请记住使用反斜线先转义: