如何使用 Perl 将散列(键作为列名,值作为行)写入制表符分隔文件?

How to write hash ( key as column name and value as row ) into tab separated file using Perl?

假设我有这样的哈希内容:

{
    'Name' => 'Jhon',
    'Roll No.' => '911',
    'Address' => 'CA',
    'City' => 'California', 
},
{
    'Name' => 'Jeff',
    'Roll No.' => '922',
    'Address' => 'CA',
    'City' => 'California', 
},

我想要这样的输出:

Name    Roll No.    Address    City
Jhon    911    CA    California
Jeff    922    CA    California

在不使用任何 perl 模块的情况下编写这样的 csv 的最简单方法是什么?

您可以使用散列切片来保持散列值的顺序,

my @keys = ("Name", "Roll No.", "Address", "City");

print join("\t", @keys), "\n";
for my $v (@AoH) {

  print join("\t", @$v{@keys}), "\n";
}