我有一個工作方法,可以打開並解析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