我需要做一些文件大小至关重要的事情。这产生了奇怪的结果
filename = "testThis.txt"
total_chars = 0
file = File.new(filename, "r")
file_for_writing = nil
while (line = file.gets)
total_chars += line.length
end
puts "original size #{File.size(filename)}"
puts "Totals #{total_chars}"
像这样
original size 20121
Totals 20061
为什么第二个短了?
编辑:回答者的预感是正确的:测试文件中有 60 行。如果我改变这条线
total_chars += line.length + 1
它完美地工作。但是在 *nix 上,这种变化会不会出错?
编辑:跟进现在在这里。谢谢!