【发布时间】:2011-08-26 03:45:51
【问题描述】:
我试图使用以下代码从文件中读取行。但是在阅读file时,内容都在一行中:
line_num=0
File.open('xxx.txt').each do |line|
print "#{line_num += 1} #{line}"
end
但是这个file 会分别打印每一行。
我必须使用标准输入,比如ruby my_prog.rb < file.txt,我不能假设文件使用的行尾字符是什么。我该如何处理?
【问题讨论】:
-
您可以使用
each.each_with_index或each.with_index,而不是line_num = 0。 -
@andrew-grimm 谢谢,它使代码更简洁。
-
请参阅 stackoverflow.com/q/25189262/128421,了解为什么逐行 IO 优于使用
read。 -
使用
line.chomp处理行尾(@SreenivasanAC提供)
标签: ruby line-endings