2011-02-24 157 views
116
array_with_three_elements: 
- 1 
- 2 
- 3 

empty_array: 

有什麼辦法可以指定empty_array:是一個沒有元素的數組,例如[]?當我將它加載到紅寶石哈希中時,我想知道它是一個數組。如何在YAML中創建一個空數組?

感謝

+11

你試圖使用'[]'? – Jimmy 2011-02-24 20:53:31

回答

189

嘗試使用[],如:

empty_array: [] 

所以在Ruby中,你有:

x = YAML::load("empty_array: []") 
x # => {"empty_array" => []} 
+30

我只是想補充一點,你可以進入irb並輸入如下內容:「require'yaml'; YAML :: dump({:hi => []})」來查看yaml應該是什麼對象。 – 2011-02-24 21:15:47

+13

我只想指出JSON是YAML 1.2的正式子集,幾乎是早期版本的子集。因此'[]'適用於空序列,''「'適用於空字符串,'{}'適用於空映射。 – 2012-09-24 01:49:14

+1

@DanielH請注意,YAML解析器可能不支持'[]'或'{}'結構內的換行符,這與JSON主要不兼容(複製粘貼[Wikipedia](http://en.wikipedia.org/ wiki/Yaml#cite_note-10))歡呼聲 – olibre 2013-02-12 10:51:55