如何使用在函数内的主块中打开的文件句柄?

时间:2014-01-19 06:57:21

标签: perl

我在Perl中打开了一个文件

open(HANDLE,$inputfile)

现在,我想在函数中使用此HANDLE并写入同一文件。我怎么能这样做?

我是Perl的新手所以任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:2)

通常,您不希望使用包文件句柄(缺少sigil);词法文件句柄(以$开头)更不容易出错,并且更容易传递给子例程:

use autodie; # Check everything succeeds automatically.

open(my $fh, '<', $inputfile);

some_function($fh);

sub some_function {
    my ($filehandle) = @_;   # This was `$fh` from above

    print {$filehandle} "Hello World!\n";
}

答案 1 :(得分:-1)

在文件中写入非常简单。 HANDLE是文件的文件描述符 所以对于写作,你需要使用print命令。

  

打印HANDLE“你要写的东西”

此打印将对该文件发表评论。