ruby - 如何以正确的格式写入 JSON 文件

我正在 Ruby 中创建一个哈希,并希望以正确的格式将其写入 JSON 文件。

这是我的代码:

tempHash = {
    "key_a" => "val_a",
    "key_b" => "val_b"
}
fJson = File.open("public/temp.json","w")
fJson.write(tempHash)
fJson.close

这是生成文件的内容:

key_aval_akey_bval_b

我正在使用 Sinatra(不知道是什么版本)和 Ruby v 1.8.7。

如何以正确的 JSON 格式将其写入文件?

最佳答案

需要 JSON库,并使用 to_json.

require 'json'
tempHash = {
    "key_a" => "val_a",
    "key_b" => "val_b"
}
File.open("public/temp.json","w") do |f|
  f.write(tempHash.to_json)
end

您的 temp.json 文件现在如下所示:

{"key_a":"val_a","key_b":"val_b"}

https://stackoverflow.com/questions/5507512/

相关文章:

c# - ASP.Net Core 中的 JSON 序列化/反序列化

c# - 无法使用 Json 序列化 Web API 中的响应

python - Python中的字符串到字典

ruby-on-rails - 将 json 格式的键值对转换为以符号为键的 ruby​​ 哈希的最

javascript - 在 DOM 中嵌入任意 JSON 的最佳实践?

javascript - 将json数据转换为html表

json - 以友好的方式获取ffmpeg信息

javascript - 将 Javascript 对象编码为 Json 字符串

jquery - 如何检查值是否为 JSON 对象?

c# - 如何从 JSON 字符串自动生成 C# 类文件