Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
打印出哈希表中的元素,Ruby_Ruby_Ruby Hash - Fatal编程技术网

打印出哈希表中的元素,Ruby

打印出哈希表中的元素,Ruby,ruby,ruby-hash,Ruby,Ruby Hash,我有一个如下所示的哈希表: hash = "{\"url\":\"/system/message\",\"device\":\"UNKNOWN\",\"version\":\"1.0\",\"timestamp\":\"2018-08-28T11:16:29.516617Z\",\"object\":{\"timestamp\":\"2018-08-28T11:16:29.516490Z\",\"id\":9800,\"debug_level\":2,\"message\":\"Got new

我有一个如下所示的哈希表:

hash =
"{\"url\":\"/system/message\",\"device\":\"UNKNOWN\",\"version\":\"1.0\",\"timestamp\":\"2018-08-28T11:16:29.516617Z\",\"object\":{\"timestamp\":\"2018-08-28T11:16:29.516490Z\",\"id\":9800,\"debug_level\":2,\"message\":\"Got new port configuration\"}}"

 hash.each do |variable|
    puts variable
 end

这不起作用

您需要首先将字符串转换为哈希值

require 'json'

my_hash = JSON.parse(hash)
my_hash.each do |key, value|
  puts value
end

您需要首先将字符串转换为哈希

require 'json'

my_hash = JSON.parse(hash)
my_hash.each do |key, value|
  puts value
end

您还可以执行以下操作:

require 'json'
values = JSON.parse(hash).map {|k,v| v}
values.each do |value|
  puts value
end

您还可以执行以下操作:

require 'json'
values = JSON.parse(hash).map {|k,v| v}
values.each do |value|
  puts value
end

不过,这可不是什么乱七八糟的事。这是一个字符串,但不是散列。这是一根绳子。