Perl 檔案讀寫
在 Perl 中,一旦你打開了一個檔案控制代碼,你需要能夠讀取和寫入資訊。有多種不同的方法可以將資料讀入和寫入檔案。
<FILEHANDL> 運算子
從開啟的檔案控制代碼讀取資訊的主要方法是 <FILEHANDLE> 運算子。在標量上下文中,它從檔案控制代碼返回一行。例如:
#!/usr/bin/perl print "What is your name?\n"; $name = <STDIN>; print "Hello $name\n";
當你在列表上下文中使用 <FILEHANDLE> 運算子時,它會從指定的檔案控制代碼返回一個行列表。例如,要將檔案中的所有行匯入到陣列中:
#!/usr/bin/perl open(DATA,"<import.txt") or die "Can't open data"; @lines = <DATA>; close(DATA);
getc 函式
getc 函式從指定 FILEHANDLE 返回單個字元,如果沒有指定則返回 STDIN:
getc FILEHANDLE getc
如果發生錯誤,或者檔案控制代碼已到達檔案末尾,則返回 undef。
read 函式
read 函式從緩衝的檔案控制代碼讀取一塊資訊:此函式用於從檔案讀取二進位制資料。
read FILEHANDLE, SCALAR, LENGTH, OFFSET read FILEHANDLE, SCALAR, LENGTH
讀取的資料長度由 LENGTH 定義,如果未指定 OFFSET,則資料將放置在 SCALAR 的開頭。否則,資料將放置在 SCALAR 中 OFFSET 位元組之後。該函式在成功時返回讀取的位元組數,在檔案末尾返回零,如果發生錯誤則返回 undef。
print 函式
對於所有用於從檔案控制代碼讀取資訊的不同方法,寫入資訊的主要函式是 print 函式。
print FILEHANDLE LIST print LIST print
print 函式將 LIST 的計算值列印到 FILEHANDLE,或列印到當前輸出檔案控制代碼(預設為 STDOUT)。例如:
print "Hello World!\n";
廣告