我測試了>>
和>
在我的代碼下面打開目標文件,它工作的很好。他們有什麼不同?在Perl中打開文件的方法
my $sourfile = "ch1.txt";
my $destfile = "chapter1.txt";
open (SOURFILE, $sourfile);
open (DESTFILE, ">>$destfile"); #both >> and > work here.
#my $fh = \*DATA;
my $fh = \*SOURFILE;
我測試了>>
和>
在我的代碼下面打開目標文件,它工作的很好。他們有什麼不同?在Perl中打開文件的方法
my $sourfile = "ch1.txt";
my $destfile = "chapter1.txt";
open (SOURFILE, $sourfile);
open (DESTFILE, ">>$destfile"); #both >> and > work here.
#my $fh = \*DATA;
my $fh = \*SOURFILE;
的區別:
> Open file for writing.
>> Open file for appending.
您可能要切換到使用的open 3個參數的形式,並使用詞法變量作爲文件句柄:
open(my $handle, '>', "some_file") or die $!;
3個參數是一個非常好的主意。正如使用詞法文件句柄一樣。但它們是完全獨立的功能。您不需要使用三參數打開爲了使用詞法文件句柄。 – 2011-05-11 08:15:36
>
創建如果它已經存在,則截斷。 >>
創建或附加到現有文件。 (而且這不是一種方法;除非你眯起眼睛,否則Perl 5並不是真正的OO。)
道歉事先被簡化,但是open - perldoc。事實上,我會概括我的答案:總是先嚐試http://perldoc.perl.org。論壇/問答&一個網站是你的最後度假村,而不是你的第一。
感謝您的建議。 – 2011-05-11 00:46:11
'perldoc -f open'和'perldoc perlopentut' – toolic 2011-05-11 00:35:24