2011-05-11 2 views
1

아래 코드를 사용하여 열기 대상 파일에 대해 >>>을 테스트했지만 제대로 작동합니다. 그들에게 다른 점은 무엇입니까?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; 
+3

'perldoc -f open'과'perldoc perlopentut' – toolic

답변

7

의 차이 :

> Open file for writing. 
>> Open file for appending. 
당신은 open의 3 인자 양식을 사용하도록 전환 할 수 있습니다

, 파일로 어휘 변수를 사용하여 핸들 :

open(my $handle, '>', "some_file") or die $!; 
+3

3 인자는 아주 좋은 생각입니다. 어휘 파일 핸들을 사용하고 있습니다. 그러나 그들은 완전히 별개의 기능입니다. 렉시 컬 파일 핸들을 사용하기 위해 3 개의 인수를 사용하지 않아도됩니다. –

1

>가 생성 , 이미 존재하는 경우 자릅니다. >> 기존 파일을 만들거나 추가합니다. (그리고 그것은 방법이 아니며 Perl 5는 당신이 곁눈질하지 않는 한 실제로 모든 객체 지향이 아닙니다.)

3

간결함을 미리 사과하지만 open - perldoc. 사실, 나는 내 대답을 일반화 할 것이다. 항상 먼저 http://perldoc.perl.org을 시도해 보라. 포럼/Q & 사이트는 마지막 리조트이며 은 처음으로이 아닙니다.

+0

귀하의 조언에 감사드립니다. –