国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Perl > 正文

perl 文件操作總結(jié)

2020-06-04 20:28:50
字體:
供稿:網(wǎng)友

一、打開、關(guān)閉文件

    open的返回值用來確定打開文件的操作是否成功,當(dāng)其成功時返回非零值,失敗時返回零,因此可以如下判斷:
    if (open(MYFILE, "myfile"))
    {
        # here is what to do if the file opened successfully
    }
    當(dāng)文件操作完畢后,用close(MYFILE); 關(guān)閉文件。
    讀:open(文件句柄,"<文件名")  open(文件句柄,"文件名")   前提文件必須已經(jīng)存在,否則會返回0,出錯信息在!中
    寫:open(文件句柄,">文件名"),文件如果不存在,那么創(chuàng)建之,如果存在,內(nèi)容被清空,長度截為0,!中有出錯信息。
    追加:open(文件句柄,">>文件名"),基本同寫,但有一點(diǎn),文件中的內(nèi)容不會被清空,新的內(nèi)容會追加到原文后面。
    讀寫:open(文件句柄,"+<文件名"),通過“+<”模式,你可以既可以讀文件,又可以寫文件。你可以通過tell() 函數(shù)在文件內(nèi)部移動,通過seek()函數(shù)進(jìn)行定位。如果文件不存在,就會被創(chuàng)建。如果文件已經(jīng)存在,原來的數(shù)據(jù)不會被清除。

二、讀文件        

    語句line = <MYFILE>;從文件中讀取一行數(shù)據(jù)存儲到簡單變量line中并把文件指針向后移動一行。
    語句@array = <MYFILE>;把文件的全部內(nèi)容讀入數(shù)組@array,文件的每一行(含回車符)為@array的一個元素。

主要使用以下三個函數(shù):

1__VE_ITEM__Ø         tell函數(shù)

函數(shù)tell用來確定文件中當(dāng)前位置(亦即第一條記錄后的那個字節(jié))。Tell返回的值也是記錄長度的字節(jié)數(shù)。

       length = tell ( FILE );

如一條記錄有3個字節(jié)長度,字節(jié)0,1和2。因而,文件中的當(dāng)前位置是3,這就是一條記錄的長度。

1__VE_ITEM__Ø         seek函數(shù)

如果記錄的長度已知,函數(shù)seek可用于查找文件中的任何記錄。

函數(shù)seek接受3個參數(shù):filename、offset和method。

Offset是在文件中確定新的當(dāng)前位置時,所需移動的字節(jié)數(shù)。這個數(shù)一般可以這樣計(jì)算:所需跳過的記錄數(shù)乘以記錄的字節(jié)數(shù)。

Method指出要開始查找的位置:

0表示從文件開始處計(jì)算;

1表示從當(dāng)前位置開始計(jì)算;

2表示從文件結(jié)束出開始計(jì)算(這種情況下,offset一般為負(fù)數(shù))。
                          

例如:

 seek  ( FILE,  5*length, 0 )

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 晋城| 奇台县| 金川县| 巩义市| 涞源县| 桃源县| 翼城县| 西昌市| 武定县| 时尚| 高阳县| 临城县| 科技| 贵南县| 娱乐| 孝义市| 措美县| 潢川县| 汶上县| 若尔盖县| 沈阳市| 新田县| 交城县| 阿拉善左旗| 辰溪县| 江北区| 秦安县| 磐安县| 临邑县| 中江县| 龙门县| 开阳县| 宜春市| 岳西县| 开鲁县| 五指山市| 青川县| 丁青县| 昂仁县| 乐东| 淮安市|