Ruby JSON处理 #
一、基本用法 #
1.1 解析JSON #
ruby
require 'json'
json_string = '{"name": "Ruby", "version": 3.3}'
data = JSON.parse(json_string)
data["name"]
data = JSON.parse(json_string, symbolize_names: true)
data[:name]
1.2 生成JSON #
ruby
require 'json'
data = { name: "Ruby", version: 3.3 }
json_string = data.to_json
json_string = JSON.generate(data)
pretty_json = JSON.pretty_generate(data)
二、文件操作 #
ruby
require 'json'
data = JSON.load(File.read("data.json"))
JSON.dump(data, File.open("output.json", "w"))
三、自定义序列化 #
ruby
class Person
attr_reader :name, :age
def initialize(name, age)
@name = name
@age = age
end
def to_json(*args)
{ name: @name, age: @age }.to_json(*args)
end
def self.from_json(json)
data = JSON.parse(json)
new(data["name"], data["age"])
end
end
四、总结 #
本章我们学习了:
- JSON.parse:解析JSON字符串
- to_json:生成JSON字符串
- 文件操作:load、dump
- 自定义序列化:to_json、from_json
接下来让我们学习Ruby的CSV处理!
最后更新:2026-03-27