将数据打印到csv文件中以形成数组

时间:2018-12-21 14:22:53

标签: perl export-to-csv

我试图将一个数组打印到一个csv文件中,并为此编写以下代码:

use strict;
use warnings;

use Text::CSV;

use Text::CSV_XS;

my $csv = Text::CSV_XS->new();

my $file = "data.csv";

open(OUT, '<', $file) or die "Could not open '$file' $!\n";

my @columns = (qw/what ever the items are for each columns/);

my $status = $csv->print(OUT, \@columns);

这个脚本给我返回了: 在test.pl第37行使用“ strict subs”时,不允许使用标头“ OUT”。 由于编译错误,test.pl的执行中止了。

我尝试使用Text :: CSV或Text :: CSV_XS在csv中打印数据,我需要有关语法的更多信息。

1 个答案:

答案 0 :(得分:3)

您不能将裸字文件句柄用作子例程参数。改用词汇文件句柄:

open my $out, '<', $file or die ...;
$csv->print($out, \@columns);

或者,使用typeglob标记(不太可取):

$csv->print(*OUT, \@columns);

此外,您已打开文件进行读取(<)。您无法打印到输入文件句柄。您是说>吗?