Ruby I/O 关于 unless 循环的编程

Ruby I/O programming about a unless loop

来自 http://ruby.bastardsbook.com/chapters/io/

的教程
file = File.open("sample.txt", 'r')
while !file.eof?
   line = file.readline
   puts line
end

这个方法放每一行,但是当我替换

while !file.eof?  

unless file.eof?

循环只运行一次,为什么?

unlessif 的负等价物。它不会循环。

您正在寻找的关键字大概是 until - 它是 while 的反函数,因此确实执行了一个循环。