我对Perl及其语法很新。我已经做了一些关于从一个文件中读取并写入另一个文件的研究。我写了一小段代码似乎没有给我任何错误,但它也没有写入文件。一些帮助将不胜感激。
#!/usr/bin/perl
use strict;
use warnings;
my $defaultfile = 'C:\\Glenn Scott C\\AUTO IOX\\IOMETER FILES\\test.txt';
my $mainfile = 'C:\\Glenn Scott C\\AUTO IOX\\IOMETER FILES\\IOMETERFILECREATOR.txt';
open FILE, $defaultfile;
open FILE2, $mainfile;
while (my $line = <FILE>)
{
print FILE2($line);
}
close FILE;
close FILE2;
答案 0 :(得分:1)
关闭,但不完全。
打开最好用3个参数完成。 open ( my $default_fh, '<', $defaultfile ) or die $!;
print
到文件句柄不起作用。这是print {$main_fh} $line;
您应该测试open
是否成功。 or die $!
就足够了。
所以这就是你所需要的:
#!/usr/bin/perl
use strict;
use warnings;
my $defaultfile = 'C:\\Glenn Scott C\\AUTO IOX\\IOMETER FILES\\test.txt';
my $mainfile =
'C:\\Glenn Scott C\\AUTO IOX\\IOMETER FILES\\IOMETERFILECREATOR.txt';
open( my $default_fh, "<", $defaultfile ) or die $!;
open( my $main_fh, ">", $mainfile ) or die $!;
while ( my $line = <$default_fh> ) {
print {$main_fh} $line;
}
close $default_fh;
close $main_fh;