我使用YAML::XS
库将数据结构转储到YAML:
foo => {
bar => [
{...},
{...},
],
baz => [
{...},
{...},
],
...
}
看起来YAML :: XS的默认行为是在转储它们之前对键进行排序,但这不是我想要的。人类必须阅读和编辑此脚本的输出,因此可读性是一个问题。有没有办法控制密钥被转出的顺序,以便在foo->{baz}
之前foo->{bar}
出现?
答案 0 :(得分:3)
从docs可以看出,没有选项可以配置哈希的顺序。通过查看dump_node
中的dump_hash
和LibYAML/perl_libyaml.c
,可以进一步确认这一点。