【发布时间】:2012-02-19 10:39:58
【问题描述】:
如果我在比较中将 == 更改为 >,我会在 ruby 中收到以下错误:
nano:jc] ruby ItemController.rb
file read: snippets.txt
ItemController.rb:23:in `read': undefined method `>' for nil:NilClass (NoMethodError)
from ItemController.rb:19:in `open'
from ItemController.rb:19:in `read'
from ItemController.rb:58
以下是引起投诉的方法定义。见行
if line.index("<item>") > -1
与
if line.index("<item>") == 0
它有效。 > 0 也失败。
哇!
def read
@item_count = 0
File.open(@file_name, 'r') do |f1|
while line=f1.gets
@line.concat([line])
if line.index("<item>") > -1
puts "begin"
@item_count = @item_count + 1
end
if line.index("</item>") == 0
puts "end\n"
end
# puts line
end # while
end # do
end # def
【问题讨论】: