open FILEHANDLE, EXPR, LIST open FILEHANDLE, EXPR open FILEHANDLE |
打開一個文件,使用指定的文件句柄。文件句柄可能是一個表達式,將所得的值被用作手柄。 如果冇有指定文件名的變量具有相同名稱的文件句柄(這應該是一個標量變量指的是文件名的字符串值)。的特殊文件名“ - ”指的是STDIN和“>- “指的是STDOUT。
0 - 失敗
1 - 成功
以下是語法在隻讀模式打開file.txt的。這裡小於< signe 指示,文件必須以隻讀模式運行結束
open(DATA, "<file.txt");
這裡DATA將被用來讀取該文件的文件句柄。下麵是這個例子,這將打開一個文件,並將其內容打印在屏幕上。
#!/usr/bin/perl #by www.gitbook.net open(DATA, "<file.txt"); while(<DATA>) { print "$_"; }
以下是語法打開file.txt的寫模式。這裡小於> signe 的表示,文件必須以寫入方式下運行結束
open(DATA, ">file.txt");
這個例子實際上截斷(清空)的文件,然後打開它編寫,這可能不是預期的效果。如果你想打開一個文件進行讀取和寫入,你可以把一個加號前>或<字符。
例如,要打開一個文件,但不截斷它更新:
open(DATA, "+<file.txt");
首先截斷該文件:
open DATA, "+>file.txt" or die "Couldn't open file file.txt, $!";
您可以打開一個文件中追加模式。在這種模式下的寫入點,將被設置為在文件末尾
open(DATA,">>file.txt") || die "Couldn't open file file.txt, $!";
雙“打開文件進行追加,將文件指針末端,使可以立即啟動附加信息。但是,你可以不讀它,除非你在它前麵放置一個加號:
open(DATA,"+>>file.txt") || die "Couldn't open file file.txt, $!";
下麵是表中提供了可能的值的不同的模式
Entities Definition < or r Read Only Access > or w Creates, Writes, and Truncates >> or a Writes, Appends, and Creates +< or r+ Reads and Writes +> or w+ Reads, Writes, Creates, and Truncates +>> or a+ Reads, Writes, Appends, and Creates