婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > Perl文件讀取的經典用法分享

Perl文件讀取的經典用法分享

熱門標簽:買了外呼系統不想用了怎么辦 浦東上海400開頭的電話申請 開封百應電銷機器人聯系方式 電話機器人電話卡封號怎么辦 樂昌電話機器人 真人語音電銷機器人系統 武漢呼叫中心外呼系統線路商 北京語音電銷機器人價格 邯鄲外呼調研線路

用Open() 函數打開文件

打開文件的常用方法是:

復制代碼 代碼如下:

open(FH, " $filename")
or die "Couldn't open $filename for reading: $!";

open() 函數通常帶有兩個參數,第一個為文件句柄,用于指向打開的文件,第二個參數是文件名及模式(文件的打開模式)的混合體,如果文件被成功打開,open()函數返回true,否則為false。我們用“or”來測試該條件。

上述代碼中的模式由小于字符()來表示。如果文件不存在,open()將返回false。此時,你可以讀文件句柄,但不可以寫。

大于字符表示寫。如果文件不存在,就會被創建。如果文件存在,文件被清除,以前的數據將會丟失。你可以寫入文件句柄,但不可以讀入。

復制代碼 代碼如下:

# 如果文件不存在,就創建它
open(FH, "> $filename")
or die "Couldn't open $filename for writing: $!";

如果文件不存在,添加模式(用兩個大于符號表示)可以用來創建新文件,如果文件存在,該模式并不會清除原來的數據。

同“”或“讀”模式一樣,你只能對文件句柄進行寫操作。 (所以的寫入內容都添加到文件尾)。企圖進行讀操作,會產生運行錯誤。

復制代碼 代碼如下:

open(FH, ">> $filename")
or die "Couldn't open $filename for appending: $!";

通過“+”模式,你可以既可以讀文件,又可以寫文件。你可以通過tell() 函數在文件內部移動,通過seek()函數進行定位。如果文件不存在,就會被創建。如果文件已經存在,原來的數據不會被清除。

如果你打算清除原來的文件內容,或者自己調用truncate() 函數,或者使用“+>”模式。

復制代碼 代碼如下:

open(FH, "+> $filename")
or die "Couldn't open $filename for reading and writing: $!";

注意“+”和“+>”的區別,兩者都可以可讀可寫。前者為非破壞性寫,后者為破壞性寫。

錯誤

錯誤是如何出現的?很多地方都會出現錯誤:如目錄不存在,文件不可寫入,你的程序丟失了文件句柄等等。

你應該檢查系統調用的結果 (如open() 和sysopen()),看看是否調用成功。

為了幫助用戶查錯,通常使用“or die()”,你應記住這些用法。首先,應寫出系統調用失敗(“open”)的信息。其次,應寫出文件名的信息,以便修正錯誤時更容易地定位。第三,要寫出打開文件的方式, (“for writing,”“for appending”)。第四,輸出操作系統的出錯信息(包含在$!中)。這樣,一旦出現文件不能打開的問題,使用你的程序的用戶會大體上知道為什么不能打開。有時,我們把第一個和第三個合并在一起:
or die "unable to append to $filename: $!";

如果在open() 和出錯信息中都寫了文件的全名,你會冒改變了open() 的風險,使得出錯信息不合時宜或不正確。

復制代碼 代碼如下:

# 下面會出現虛假的出錯信息
open(FH, "/var/run/file.pid")
or die "Can't open /var/log/file.pod for writing : $!";

用 Sysopen()進行更多的控制
為了更好的控制文件的打開方式,可以使用 sysopen() 函數:

復制代碼 代碼如下:

use Fcntl;
sysopen(FH, $filename, O_RDWR|O_CREAT, 0666)
or die "Can't open $filename for reading/writing/creating : $!";

函數 sysopen() 帶有四個參數,第一個是同open()函數類似的文件句柄參數,第二個參數是不帶模式信息的文件名,第三個參數是模式參數,由Fcntl 模塊提供的邏輯OR運算組合起來的常數構成,第四個參數(可選),為八進制屬性值(0666表示數據文件, 0777表示程序)。如果文件可以被打開,sysopen() 返回true,如果打開失敗,則返回false。

不同于open()函數,sysopen()不提供模式說明的簡寫方式,而是把一些常數組合起來,而且,每個模式常數有唯一的含義,只有通過邏輯OR運算才能將它們組合起來,你可以設置多個行為的組合。

O_RDONLYRead-only
O_WRONLY Write-only
O_RDWR Reading and writing
O_APPEND Writes go to the end of the file
O_TRUNC Truncate the file if it existed
O_CREAT Create the file if it didn't exist
O_EXCLError if the file already existed (used with O_CREAT)

當你需要小心行事的時候,就使用sysopen() 函數,例如,如果你打算添加內容到文件中,如果文件不存在,不創建新文件,可以這樣寫:

復制代碼 代碼如下:

sysopen(LOG, "/var/log/myprog.log", O_APPEND, 0666)
or die "Can't open /var/log/myprog.log for appending: $!";

您可能感興趣的文章:
  • perl文件讀取的幾種處理方式小結

標簽:自貢 淄博 松原 石嘴山 六安 河北 鄂州 宜春

巨人網絡通訊聲明:本文標題《Perl文件讀取的經典用法分享》,本文關鍵詞  Perl,文件,讀,取的,經典,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Perl文件讀取的經典用法分享》相關的同類信息!
  • 本頁收集關于Perl文件讀取的經典用法分享的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲欧美日韩国产一区二区三区| 欧美国产精品久久| 91精品国产综合久久精品麻豆| 99re这里都是精品| 欧美一区二区在线免费观看| 99久久99久久精品免费观看| 亚洲欧美色图小说| 国产一区二区在线影院| 国产精品久久久久三级| 中文天堂在线一区| 日本一区二区三区在线不卡| 亚洲欧美日韩国产手机在线| 亚洲欧美在线视频观看| 欧美丰满高潮xxxx喷水动漫| 88在线观看91蜜桃国自产| 91精品国产综合久久精品图片| 国产校园另类小说区| 国产精品久久久久永久免费观看 | wwwwxxxxx欧美| 亚洲午夜精品网| 91国产视频在线观看| 国产欧美在线观看一区| 一区二区三区在线视频免费观看 | 亚洲超丰满肉感bbw| 99久久亚洲一区二区三区青草| 综合久久给合久久狠狠狠97色| 精品一区二区免费视频| 一区二区三区电影在线播| 亚洲在线视频免费观看| 日韩高清欧美激情| 成人18精品视频| 欧美精品乱人伦久久久久久| 国产亚洲精品aa| 中文字幕一区二区三区在线不卡| 中文字幕 久热精品 视频在线 | 国产成人精品免费视频网站| 久久久久国产精品麻豆ai换脸| 久久99精品网久久| 亚洲高清免费视频| 亚洲韩国精品一区| 精品一区二区久久| 裸体歌舞表演一区二区| 美日韩一区二区| 国产精品自拍在线| 成人精品一区二区三区中文字幕| 一本高清dvd不卡在线观看| 久久成人18免费观看| 国产午夜精品在线观看| 麻豆国产欧美一区二区三区| 99精品1区2区| 一区二区久久久久久| 亚洲免费毛片网站| 五月综合激情网| 欧美性猛片aaaaaaa做受| 日产欧产美韩系列久久99| 欧美精品在线一区二区| 国产精品亚洲一区二区三区在线 | 丁香激情综合国产| 成人亚洲精品久久久久软件| 99国产精品久久久久久久久久| 欧美一区二区高清| 91精品国产丝袜白色高跟鞋| 欧美一区二区在线免费播放 | 日韩av在线发布| 精品成人私密视频| 亚洲成人精品一区| 日韩一区二区三区精品视频| 国内成+人亚洲+欧美+综合在线| 亚洲情趣在线观看| 欧美日韩电影一区| 91一区二区在线| 午夜精品免费在线观看| 日韩一卡二卡三卡四卡| 大胆亚洲人体视频| 国产精品素人一区二区| 日韩一卡二卡三卡四卡| 高清不卡一二三区| 九色综合国产一区二区三区| 中文字幕中文字幕中文字幕亚洲无线 | 国产一区二区三区四区五区美女| 欧美日本在线看| 美女爽到高潮91| 亚洲天堂2016| 91精品久久久久久久99蜜桃| 国产精品综合网| 麻豆精品视频在线观看| 五月婷婷另类国产| 国产成人免费av在线| 久久99精品久久久久| 91啪亚洲精品| 国产精品不卡在线| 国产在线日韩欧美| 欧美sm美女调教| 亚洲国产精品久久久久秋霞影院| 97精品电影院| 欧美激情中文不卡| 麻豆精品国产91久久久久久| 国产喂奶挤奶一区二区三区| 91.麻豆视频| 日韩视频永久免费| 不卡影院免费观看| av不卡在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲在线视频一区| 亚洲欧美中日韩| 91精品国产入口| 欧美一区二区三区四区高清| 91美女视频网站| av成人老司机| 国产成人精品午夜视频免费 | 欧美伊人久久大香线蕉综合69 | 亚洲国产一区视频| 99久久精品国产一区| 亚洲精选视频在线| 色婷婷久久综合| 国产精品视频免费看| 91原创在线视频| 自拍偷拍亚洲综合| 欧美人狂配大交3d怪物一区| 亚洲国产综合在线| 久久午夜老司机| 国产精品一区久久久久| 精品国产污网站| 国产精品一线二线三线| 欧美一级片免费看| 成人一区二区三区在线观看| 国产精品欧美一级免费| 欧美在线三级电影| 天天色 色综合| 欧美激情一区二区三区蜜桃视频| 国产精品亚洲综合一区在线观看| 久久综合久久鬼色| 欧美日韩一区久久| 欧美日韩国产免费| 日韩欧美精品在线视频| 日韩欧美亚洲一区二区| 国产精品久久久久aaaa| 国产精品国产三级国产普通话三级| 亚洲午夜成aⅴ人片| 亚洲成av人片在线观看| 国产一区二区三区在线观看精品| 国产自产高清不卡| 91网站黄www| 欧美日韩高清一区二区不卡| 91精品91久久久中77777| 欧美一区二区在线免费观看| 欧美精品一区男女天堂| 一区二区三区视频在线看| 午夜国产不卡在线观看视频| 国产超碰在线一区| 精品国产乱码久久久久久久久| 欧美在线综合视频| 99国内精品久久| 老司机一区二区| 亚洲成在人线在线播放| 精品国产免费人成电影在线观看四季 | 91老司机福利 在线| 在线国产电影不卡| 色婷婷综合久久久久中文| 欧美高清精品3d| 欧美精品成人一区二区三区四区| 欧美成人a视频| 日韩免费一区二区| 国产精品亲子乱子伦xxxx裸| 日本一二三不卡| 欧美日韩国产高清一区二区三区| 日韩一区二区三区av| 日韩一区二区三区观看| 国产精品三级久久久久三级| 国产精品理论在线观看| 亚洲电影第三页| 日韩精品三区四区| 国产成人精品免费视频网站| 国产999精品久久久久久绿帽| 欧洲av一区二区嗯嗯嗯啊| 国产目拍亚洲精品99久久精品| 97久久超碰国产精品电影| 欧美日韩大陆在线| 日韩三级高清在线| 中文字幕在线视频一区| 樱桃国产成人精品视频| 国模一区二区三区白浆| av电影天堂一区二区在线| 91精品婷婷国产综合久久竹菊| 欧美电影一区二区| 1000精品久久久久久久久| 一区二区三区小说| 国产美女av一区二区三区| 成人一区二区在线观看| 欧美久久久久久蜜桃| 欧美mv日韩mv亚洲| 亚洲成人激情自拍| 精品中文字幕一区二区小辣椒| 在线日韩一区二区| 91香蕉视频mp4| 亚洲欧美中日韩| 日韩天堂在线观看| 国产精品中文字幕欧美| 日韩成人午夜精品| 视频一区欧美精品|