我有一个工作方法,可以打开并解析json文件。现在我试图遍历json文件的目录并显示它们的内容。Ruby json解析错误:意外的令牌
工作方法单个文件:
def aperson
File.open("people/Elvis Presley.json") do |f|
parse = JSON.parse(f.read)
end
end
非工作方法,通过目录遍历:
16. def list
17. Dir.glob('people/*').each do |f|
18. parse = JSON.parse(f)
19 end
20. end
我的错误是:
/Users/ad/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/json/common.rb:148:in `parse': 743: unexpected token at 'people/Elvis Presley.json' (JSON::ParserError)
from /Users/ad/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/json/common.rb:148:in `parse'
from app.rb:18:in `block in list'
from app.rb:17:in `each'
from app.rb:17:in `list'
from app.rb:24:in `<main>'
所有文件在目录中具有相同的内容,并且按照JSONlint的值。
任何帮助将不胜感激。
谢谢,而不是获取每个文件的内容我得到的文件列表:人/安东尼DeFreitas.json 人/埃尔维斯Presley.json 人/ Seth Godin.json 人/ Steve McQueen.json – Anthony
嗯,你需要*用'parse'的结果做一些事*。否则,你只要从'Dir.glob'(这是文件名列表)得到结果。也许你想将解析的数据追加到列表中? – nneonneo
谢谢,我想我写错了代码,因为我想显示每个文件的内容而不仅仅是文件名。感谢您的帮助nneonneo。 – Anthony