如何通过没有gem的纯Ruby代码解析JSON文件

Joh*_*oss 4 ruby ruby-on-rails-4

我已经尝试了很多方法和谷歌搜索,但无论我走到哪里,使用json gem来解析JSON文件.

JSON.parse(string)
Run Code Online (Sandbox Code Playgroud)

并且几个链接也使用相同的 stackoverflow链接

我希望通过纯Ruby代码实现它,而无需使用任何gem或rails帮助.

jer*_*ink 18

JSON在stdlib中,所以使用JSON.parse纯粹的红宝石.

require "json"
json_from_file = File.read("myfile.json")
hash = JSON.parse(json_from_file)
Run Code Online (Sandbox Code Playgroud)

如果你想编写自己的JSON解析器(祝你好运),但请记住,从文件中读取它只是一个字符串.所以,首先从你的文件中读取它

File.open("myfile.json") do |f|
  str = f.gets
  # start parsing
end
Run Code Online (Sandbox Code Playgroud)

此时,您需要对所读取的内容进行标记,然后开始分离每一位.阅读json规范.