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";

更新於:2019年11月29日

737 次瀏覽

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告