"value"} 以将其转换为: { "key" : "value" } 用于写入 json 文件。现在我正在做: hash = {"key" => "va-6ren">
gpt4 book ai didi

ruby - 在 Ruby 中,如何从散列输出 json 并给它换行和制表符

转载 作者:数据小太阳 更新时间:2023-10-29 06:51:50 24 4
gpt4 key购买 nike

我正在尝试格式化 {"key"=> "value"} 以将其转换为:

{
"key" : "value"
}

用于写入 json 文件。现在我正在做:

hash = {"key" => "value"}
puts hash.to_json.gsub('{', '{\n\t')

开始。这输出

{\n\t"key":"value"}

为什么我不能换行?

最佳答案

为漂亮的东西欢呼,为避免正则表达式欢呼!

使用内置的 JSON.pretty_generate方法

require 'json'
puts JSON.pretty_generate hash, options

耶!

选项如下:

  • indent:用于缩进级别的字符串(默认:''),
  • space: 后面是一个字符串,:, 分隔符(默认:'' ),
  • space_before:放在 : 对分隔符之前的字符串(默认:''),
  • object_nl:放在JSON对象末尾的字符串(默认:''),
  • array_nl:放在JSON数组末尾的字符串(默认:''),
  • allow_nan:true 如果 NaNInfinity-Infinity 应该生成,否则如果遇到这些值将抛出异常。此选项默认为 false
  • max_nesting:生成 JSON 的数据结构中允许的最大嵌套深度。使用 :max_nesting => false 禁用深度检查,默认为 100

关于ruby - 在 Ruby 中,如何从散列输出 json 并给它换行和制表符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18495051/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com