Perl 读取CSV文件并写入CSV文件 使用Text::CSV; $csv=文本::csv->新建; 打开(高,“+>Hardtest.csv”)| | die“无法打开票证$!\n”#读取高级文件 while() { 打印“打印高优先级票据…\n”; 睡眠(1); 印刷品; } 接近(高);
这是我的代码,我正在尝试读取csv并对其进行写入,但是我似乎无法读取csv文件,请提供帮助,谢谢 好的,这里有很多东西Perl 读取CSV文件并写入CSV文件 使用Text::CSV; $csv=文本::csv->新建; 打开(高,“+>Hardtest.csv”)| | die“无法打开票证$!\n”#读取高级文件 while() { 打印“打印高优先级票据…\n”; 睡眠(1); 印刷品; } 接近(高);,perl,csv,Perl,Csv,这是我的代码,我正在尝试读取csv并对其进行写入,但是我似乎无法读取csv文件,请提供帮助,谢谢 好的,这里有很多东西 始终使用严格的和使用警告 您正在打开CSV文件写入模式(附加模式?)。不要那样做,如果你只是在阅读 不要使用| die,使用或die 最后,不要打印,而是打印$\ucode> 好的,这里有很多东西 始终使用严格的和使用警告 您正在打开CSV文件写入模式(附加模式?)。不要那样做,如果你只是在阅读 不要使用| die,使用或die 最后,不要打印,而是打印$\ucode> 我对您
使用严格的
和使用警告
| die
,使用或die
好的,这里有很多东西
使用严格的
和使用警告
| die
,使用或die
我对您的代码做了一些修改:
use Text::CSV;
$csv = Text::CSV->new;
open(HIGH, "+>Hardtest.csv") || die "Cannot open ticket $!\n"; #reads the high file
while(<HIGH>)
{
print "Printing High Priority Tickets ...\n";
sleep(1);
print <HIGH>;
}
close(HIGH);
#/usr/bin/perl-w
严格使用;
使用Text::CSV;
my$csv=文本::csv->新建;
打开(高),“+”将以读/写模式打开文件,但也将覆盖现有文件。因此,在您的代码中,while循环从未被输入。我已将其更改为“+我已稍微修改了您的代码:
use Text::CSV;
$csv = Text::CSV->new;
open(HIGH, "+>Hardtest.csv") || die "Cannot open ticket $!\n"; #reads the high file
while(<HIGH>)
{
print "Printing High Priority Tickets ...\n";
sleep(1);
print <HIGH>;
}
close(HIGH);
!/usr/bin/perl-w
严格使用;
使用Text::CSV;
my$csv=文本::csv->新建;
打开(高),“+”将以读/写模式打开文件,但也将覆盖现有文件。因此,在您的代码中,while循环从未输入。我已将其更改为“+您(尚未)使用您创建的$csv
。您(尚未)使用使用您创建的$csv
。避免打印
的原因是while
已经从文件中读取了一行,所以您只会每隔一行打印一次,对吗?是的,while循环肯定是一次读取一行文件(将每一行放入$\ucode>),因此打印
可能会打印下一行,甚至可能会尝试打印整个文件,或者可能什么也不打印,所有这些都是“坏的”。避免打印
的原因是while
已经从文件中读取了一行,因此您将只每隔一行打印一行,对吗?是的,while循环肯定是一次读取一行文件(将每行放入$\ucode>),因此打印
可能会打印下一行,甚至可能会尝试打印整个文件,或者可能什么也不打印,所有这些都是“坏的”。