標籤:
在perl中存在幾種控制代碼使用的方式,其中open為最基礎的使用方法,下面把我遇到的幾種控制代碼的使用方法做一個小小的總結:
open方法的使用:
open方法是教程中最基礎的開啟檔案的控制代碼使用方法,較為常見
教程中給出的使用方式有三種使用方式
open FILEHANDLE,EXPR
open FILEHANDLE,MODE,LIST
open FILEHANDLE
我在這裡只介紹簡單的使用方式,其它的可自行進行擴充學習。
open檔案內容的讀取和寫入: use strict; #準備進行讀取的檔案 my $my_file = "D:/file/file.txt"; #FILEHANDLE 為自命名控制代碼,大寫,<可省略 open (FILEHANDLE,"< $my_file") or die "Can‘t open $my_file"; #列印控制代碼讀取內容 print <FILEHANDLE>; #需要寫入資訊的檔案,可以存在也可以不存在 my $print_file = "D:/file/file2.txt"; #一個>表示刪除原有檔案寫入,兩個>表示追加寫入 open (FILEHANDLE2,"> $print_file") or die "Can‘t open $print_file"; #將讀取的資料寫入到需要寫入的檔案中,當然這裡要寫入的資訊不一定是控制代碼,可以是任何內容,寫入檔案的控制代碼是需要存在的。 print <FILEHANDLE2> <FILEHANDLE>; close FILEHANDLE;#關閉讀取檔案控制代碼 close FILEHANDLE2;#關閉寫入檔案的控制代碼 |
IO::File模組的使用:
IO::File模組需要先建立新的檔案控制代碼:然後open方法開啟檔案,它和open函數的工作方法類似: use strict; use IO::File;#匯入IO模組 #建立新的檔案控制代碼,此處的檔案控制代碼名需要根據自己的要求來命名,可以不是大寫字母 my $filehandle = new IO::File; #用控制代碼開啟檔案file.txt,<表示檔案為被讀取 $filehandle->open("< file.txt") or die "Can‘t open file.txt"; #列印讀取的檔案內容 print <$filehandle>; #建立一個新的檔案控制代碼 my $filehandle1 = new IO::File; #該檔案控制代碼開啟需要寫入的檔案 $filehandle1->open("> file1.txt") or diw "Can‘t open file1.txt"; #將hello word 資訊列印入該檔案控制代碼 $filehandle1->print ("hello word"); $filehandle->close;#將讀取檔案的控制代碼關閉 $filehandle->close;#將寫入檔案的控制代碼關閉 |
FileHandle模組的使用:
FileHandle方法應該是在IO模組中的方法中衍生出來的。
use strict; use FileHandle;#匯入FileHandle模組 #建立讀取檔案的控制代碼 my $filehandle = new FileHandle ("< file.txt") or die "Can‘t open file.txt"; #列印該檔案內的內容 print <$filehandle>; #建立寫入檔案的檔案控制代碼 my $filehandle1 = new FileHandle("> file1.txt") or die "Can‘t open file1.txt"; #將hello word資訊寫入該控制代碼中 print <$filehandle1> "hello word"; close $filehandle;#關閉讀取檔案的控制代碼 close $filehandle1;#關閉寫入檔案的控制代碼 |
以上三種方法在開發的過程中都曾嘗試過,最為常用的為最後一種方法,使用FileHandle模組方法,比較簡潔,對比第二種方法,將open和建立歸為一個步驟來進行解決。但是對於這三種方法各自在效能方面或者其它方面的優缺點暫時我還不能進行解答,只是將該三種建立控制代碼的方法歸納出來供大家進行參考和使用,在本總結中如果存在不正確的地方,也請大家給我留言進行修正,如果對該方面瞭解比較多的,也可以提出更對寶貴意見,僅以此來拋磚引玉。
在後面的章節中我會詳細對檔案控制代碼進行更深入的探討,會對後兩個模組進行更深入的研究和解析。
關於perl中檔案操作控制代碼使用的幾種方式-基礎版