Вы хотите JSON.parse
или JSON.load
:
def load_user_lib( filename )
JSON.parse( IO.read(filename) )
end
Ключевым моментом здесь является использование IO.read
в качестве простого способа загрузки строки JSON с диска, чтобы ее можно было проанализировать. Или, если в вашем файле есть данные UTF-8:
my_object = JSON.parse( IO.read(filename, encoding:'utf-8') )
Я ссылался на документацию JSON выше, так что вы должны прочитать ее для получения более подробной информации Но в заключение:
json = my_object.to_json
- метод для конкретного объекта для создания строки JSON.
json = JSON.generate(my_object)
- создать JSON-строку из объекта.
JSON.dump(my_object, someIO)
- создать строку JSON и записать в файл.
my_object = JSON.parse(json)
- создать объект Ruby из строки JSON.
my_object = JSON.load(someIO)
- создать объект Ruby из файла.
В качестве альтернативы:
def load_user_lib( filename )
File.open( filename, "r" ) do |f|
JSON.load( f )
end
end
Примечание: я использовал имя "snake_case" для метода, соответствующего вашему "camelCase" saveUserLib
, так как это соглашение Ruby.