我正在使用Perl脚本读取CSV文件,我有一个CSV文件,第一列包含数据包,前面有标记号
示例:
Packet0,tag1,tag2,tag3
packet1,tag1,tag2,tag3,tag4
packet2,tag1
我制作了这个剧本:
my @parts = ();
my @tag = ();
my $j=0;
open CSVFILE, 'data.csv';
while (my $row = <CSVFILE>) {
chomp;
my @line = split(/\s?,\s?/, $row);
push @packet, $line[0];
for (my $i = 1; $i <= $#line; $i++) {
$tag[$i][$j] = $line[$i];
}
j++;
}
但是这段代码对我不起作用,任何人都可以在我出错的地方帮助我吗?
答案 0 :(得分:4)
答案 1 :(得分:0)
#/usr/bin/perl -w
use strict;
use warnings;
my @packet = ();
my @tag = ();
my $j = 0;
...
while (my $row = <CSVFILE>) {
my @line = split(/\s?,\s?/, $row);
push @packet, shift(@line);
$tag[$j] = [ @line ]; #or push @tag, \@line;
$j++;
}
...