如何将YAML映射表示为流映射{},而不是多行块映射?

时间:2013-07-09 01:20:14

标签: perl serialization yaml

我有一个YAML文件 a.yaml ,其中包含以下内容:

allocations:
  hosts:
    - {name: xyz, farm: xyz1}
    - {name: xyz, farm: xyz1}

在我的Perl脚本中,我使用LoadFile('a.yaml'),转换为数据结构并更改名称,当我转储数据结构时,YAML格式发生了变化:

allocations:
  hosts:
    - farm: xyz1
      name: xyz
    - farm: xyz1
      name: xyz

但我希望YAML输出与上面的 a.yaml 一样,名称已更改:

allocations:
  hosts:
    - {name: xyz1, farm: xyz1}
    - {name: xyz1, farm: xyz1}

1 个答案:

答案 0 :(得分:1)

可悲的是,如果您必须以相同的格式使用它,您可能必须自己这样做。逐行使用它们仍然是合法的yaml,并且完全等效:你不会丢失任何倾倒它的数据。