讀文件:
復制代碼 代碼如下:
#!perl
open filetxt,"/path/a.txt"; # filetxt為文件句柄,用于和文件a.txt建立鏈接。文件句柄可任意取名,但不要和Perl自帶的幾個文件句柄重名。
print filetxt>; # 此處print函數(shù)用于顯示文件a.txt的內(nèi)容。>為取行操作符,文件句柄>用于讀取所鏈接文件的內(nèi)容。
close filetxt; # 關(guān)閉文件句柄filetxt。另一種關(guān)閉的方法是將其與其它文件建立關(guān)聯(lián),如:open filetxt,"b.txt";如此則與原來文件a.txt的關(guān)聯(lián)自動關(guān)閉。
或者
復制代碼 代碼如下:
#!perl
open filetxt,"path/a.txt"; # 用于從文件中讀取內(nèi)容,但是不能寫入任何內(nèi)容到文件中。 與 什么符號都不加 效果相同
while ($line=filetxt>)
{
print $line;
)
close filetxt;
寫文件:
在 open 一行中將 更改為 > 或 >> ,即可向文件中寫入內(nèi)容。如:
復制代碼 代碼如下:
#!perl
open TXT,">a.txt";
print TXT "夢里不知身是客,\n"; # 如果文件a.txt存在,則其內(nèi)容會被取代
print TXT "一晌貪歡。\n"; # 該行內(nèi)容會附加到第二行
close TXT;
[code]
或者
#!perl
open TXT,">>a.txt";
print TXT "獨自莫憑欄,無限江山,別時容易見時難。\n"; # 如果文件a.txt已存在,該行內(nèi)容會被附加到已存在文件的后面
close TXT;
,從文件中讀取內(nèi)容,但是不能輸出到文件里任何內(nèi)容。如果什么都不加的清況下讀文件狀況會同加上“”的效果一樣。
>,將內(nèi)容輸出到文件中,并將原有文件中的內(nèi)容清空。
>>,將內(nèi)容追加到文件中,不會清空原有文件中的內(nèi)容。
文件的重命名和刪除:
rename:將文件重命名
復制代碼 代碼如下:
#!perl
rename "a.txt","b.txt"; # 或者 rename "a.txt","a.bat";
unlink:等同于rm,刪除系統(tǒng)中的某些文件
復制代碼 代碼如下:
#!perl
my @files=*.txt>; # 或者 my @files=glob "*.txt";
unlink @files;
或者
復制代碼 代碼如下:
#!perl
unlink glob "*.txt";
或者
復制代碼 代碼如下:
#!perl
unlink *.txt>;
多個文本文件的合并:
在Perl中,可以按照如下方式合并多個文本文件:
復制代碼 代碼如下:
#!perl
open a,">a.txt";
print a "四十年來家國,三千里地山河。";
open b,">b.txt";
print b "鳳閣龍樓連霄漢,玉樹瓊枝作煙蘿。";
open c,">c.txt";
print c "幾曾識干戈?"; # 分別建立文本文件 a.txt、b.txt和c.txt,并執(zhí)行寫入操作
close a;
close b;
close c; # 關(guān)閉對應的文件句柄(filehandle)
open a,">>a.txt";
open b, "b.txt";
open c, "c.txt"; # 重新建立文件關(guān)聯(lián),其中 a.txt 執(zhí)行附加寫入操作,其它兩個文件執(zhí)行讀文件操作
print a "\n".b>."\n"; # 利用 . 進行字符串的連接,此操作符必須
print a c>."\n"; # filehandle>表示讀取文件句柄所鏈接的文本文件的內(nèi)容
close a;
close b;
close c;
[code]
或者
[code]
#!perl
open a,">a.txt";
print a "四十年來家國,三千里地山河。\n";
open b,">b.txt";
print b "鳳閣龍樓連霄漢,玉樹瓊枝作煙蘿。\n"; # 生成文件并寫入內(nèi)容時,即執(zhí)行換行操作,讓光標留在下一行
open c,">c.txt";
print c "幾曾識干戈?\n"; # 分別建立文本文件 a.txt、b.txt和c.txt,并執(zhí)行寫入操作
close a;
close b;
close c; # 關(guān)閉對應的文件句柄(filehandle)
open a,">>a.txt";
open b, "b.txt";
open c, "c.txt"; # 重新建立文件關(guān)聯(lián),其中 a.txt 執(zhí)行附加寫入操作,其它兩個文件執(zhí)行讀文件操作
print a b>; # 利用 . 進行字符串的連接,此操作符必須
print a c>; # filehandle>表示讀取文件句柄所鏈接的文本文件的內(nèi)容
close a;
close b;
close c;
如果想要在合并文本文件后刪除文本文件 b.txt 和 c.txt ,可以在后面加上如下代碼:
unlink b.txt>;
unlink c.txt>;
或者
unlink "b.txt";
unlink "c.txt";
或者
unlink b.txt>,c.txt>;
或者
unlink "b.txt","c.txt";