koheitakahashiのブログ

2020.07.01にプログラマーとして生を受けた私が学んだことや、日常について徒然に書いていきます。

Rubyで用意したハッシュをJSON形式にするには?

はじめに

Rubyで用意JSONファイルを作成する際に、どのようにすれば良いのだろうと悩みました。

そこで、解決方法をまとめたいと思います。

解決方法

JSON.pretty_generate(hash)で解決します。

以下がサンプルコードです。

require "json"
hash = ["name": "Takahashi", "age": 20, "job": "student" ]
JSON.pretty_generate(hash)
[
  {
    "name": "Takahashi",
    "age": 20,
    "job": "student"
  }
]

解説

hashをJSON形式に変換する方法はいくつかあります。上記以外のto_jsonで試すとどうなるでしょうか。 結果が以下になります。

require "json"
hash.to_json
[{"name":"Takahashi","age":20,"job":"student"}]

to_jsonはそのままの形でJSON形式に変換し、JSON.pretty_generate(hash)はインデントなど整形も行ってくれます😆

最後に

ハッシュの変換については分かったものの、JSONの基本的な知識がまだ足りていないので、その内まとめたいと思います💪

参考文献

module JSON (Ruby 2.6.0)