?? perl5.htm
字號:
<html><!-- #BeginTemplate "/Templates/index.dwt" --><head><meta http-equiv=Content-Type content="text/html; charset=gb_2312-80"><title>ChinaPerl</title>
<LINK rel=stylesheet href=mystyle.css type=text/css>
</head><body>
<table border=0 cellspacing=0 bgcolor=#80FFFF width=100%>
<tr>
<td align=left rowspan=2 width=150>
<div align="center"><img src=image/perl.gif height=85 width="85"></div>
</td>
<td align=center><img src=image/perl.gif height=85 width="85"></td>
</tr><tr>
<td colspan=2 align=center> </td>
</tr></table>
<table border=0 width=100% height=400 cellspacing=0 cellpadding=0>
<tr>
<td width=20% valign=top bgcolor="#dddddd">
<table border=0 width=100% cellpadding=0><tr><td width=5%></td>
<td width=95%>
<p align=center>Perl 5教程<br>
<a target=_blank href=http://flamephoenix.126.com>by flamephoenix</a><a href="http://perl.yesky.net"><br>
<font color="red">修訂 by RNY<br>
</font></a>2000-08-30</p>
<p align=center><a href="index.htm">目錄</a></p>
<p align=center>第一部分 Perl語言</p>
<p><a href=perl1.htm>第一章 概述</a></p>
<p><a href=perl2.htm>第二章 簡單變量</a></p>
<p><a href=perl3.htm>第三章 操作符</a></p>
<p><a href=perl4.htm>第四章 列表和數組變量</a></p>
<p><a href=perl5.htm>第五章 文件讀寫</a></p>
<p><a href=perl6.htm>第六章 模式匹配</a></p>
<p><a href=perl7.htm>第七章 控制結構</a></p>
<p><a href=perl8.htm>第八章 子程序</a></p>
<p><a href=perl9.htm>第九章 關聯數組(哈希表)</a></p>
<p><a href=perl10.htm>第十章 格式化輸出</a></p>
<p><a href=perl11.htm>第十一章 文件系統</a></p>
<p><a href=perl12.htm>第十二章 引用(指針)</a></p>
<p><a href=perl13.htm>第十三章 面向對象編程</a></p>
<p><a href=perl14.htm>第十四章 包和模塊</a></p>
<p><a href=func.htm>附錄一 函數集</a></p>
<p align=center>第二部分 Perl的CGI應用</p>
<p><a href=cgi1.htm>第一章 cgilib例</a></p>
<p><a href=cgi2.htm>第二章 動態創建圖像</a></p>
<p><a href=cgi3.htm>第三章 計數器的編寫方法</a></p>
<p><a href=cgi4.htm>第四章 Web Server設置</a></p>
第五章、...<br></td></tr></table></td>
<td width=80% valign=top>
<div align="center"></div>
<table border=0 width=100% cellpadding=0>
<tr bgcolor="#00FF80">
<td colspan="2">
<div align="center"> Perl教程 | <a href="perl5manual.zip">下載全文</a>
| <a target=_blank href=http://www.turbolinux.com.cn/cgi-bin/linux/wwwthreads.pl?action=list&Board=perl>Perl論壇</a>
| <a href="http://perl.yesky.net">推薦站點</a> | 關于我們 </div>
</td>
</tr>
<tr>
<td colspan="2"><!-- #BeginEditable "body" -->
<p align=center>第五章 文件讀寫<br>
</p>
<p align=center><a target=_blank href=http://flamephoenix.126.com>by
flamephoenix</a></p>
<a href=#一、打開、關閉文件>一、打開、關閉文件</a><br>
<a href=#二、讀文件>二、讀文件</a><br>
<a href=#三、寫文件>三、寫文件</a><br>
<a href=#四、判斷文件狀態>四、判斷文件狀態</a><br>
<a href=#五、命令行參數>五、命令行參數</a><br>
<a href=#六、打開管道>六、打開管道</a><br>
<br>
<a name=一、打開、關閉文件>一、打開、關閉文件</a><br>
語法為open (filevar, filename),其中filevar為文件句柄,或者說是程序中用來代表某文件的代號,filename為文件名,其路徑可為相對路徑,亦可為絕對路徑。<br>
open(FILE1,"file1");<br>
open(FILE1, "/u/jqpublic/file1");<br>
打開文件時必須決定訪問模式,在PERL中有三種訪問模式:讀、寫和添加。后兩種模式的區別在于寫模式將原文件覆蓋,原有內容丟失,形式為:open(outfile,">outfile");而添加模式則在原文件的末尾處繼續添加內容,形式為:open(appendfile,
">>appendfile")。要注意的是,不能對文件同時進行讀和寫/添加操作。<br>
open的返回值用來確定打開文件的操作是否成功,當其成功時返回非零值,失敗時返回零,因此可以如下判斷:<br>
if (open(MYFILE, "myfile")) {<br>
# here's what to do if the file opened successfully<br>
}<br>
當文件打開失敗時結束程序:<br>
unless (open (MYFILE, "file1"))
{<br>
die ("cannot open input file file1\n");<br>
}<br>
亦可用邏輯或操作符表示如下:<br>
open (MYFILE, "file1") || die ("Could
not open file");<br>
當文件操作完畢后,用close(MYFILE); 關閉文件。<br>
<a name=二、讀文件>二、讀文件</a><br>
語句$line = <MYFILE>;從文件中讀取一行數據存儲到簡單變量$line中并把文件指針向后移動一行。<STDIN>為標準輸入文件,通常為鍵盤輸入,不需要打開。<br>
語句@array = <MYFILE>;把文件的全部內容讀入數組@array,文件的每一行(含回車符)為@array的一個元素。<br>
<a name=三、寫文件>三、寫文件</a><br>
形式為:<br>
open(OUTFILE, ">outfile");<br>
print OUTFILE ("Here is an output line.\n");<br>
注:STDOUT、STDERR為標準輸出和標準錯誤文件,通常為屏幕,且不需要打開。<br>
<a name=四、判斷文件狀態>四、判斷文件狀態</a><br>
1、文件測試操作符<br>
語法為:-op expr,如:<br>
if (-e "/path/file1") {<br>
print STDERR ("File file1 exists.\n");<br>
}<br>
<p></p>
<p align=center>文件測試操作符</p>
<div align=center>
<center>
<table border=1 width=70%>
<tr>
<td valign=top width=192><i>操作符</i></td>
<td valign=top width=384><i>描述</i></td>
</tr>
<tr>
<td valign=top width=192>-b</td>
<td valign=top width=384>是否為塊設備</td>
</tr>
<tr>
<td valign=top width=192>-c</td>
<td valign=top width=384>是否為字符設備</td>
</tr>
<tr>
<td valign=top width=192>-d</td>
<td valign=top width=384>是否為目錄</td>
</tr>
<tr>
<td valign=top width=192>-e</td>
<td valign=top width=384>是否存在</td>
</tr>
<tr>
<td valign=top width=192>-f</td>
<td valign=top width=384>是否為普通文件</td>
</tr>
<tr>
<td valign=top width=192>-g</td>
<td valign=top width=384>是否設置了setgid位</td>
</tr>
<tr>
<td valign=top width=192>-k</td>
<td valign=top width=384>是否設置了sticky位</td>
</tr>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -