加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl open die

发布时间:2020-12-15 23:55:19 所属栏目:大数据 来源:网络整理
导读:在Perl中可以用 open或者sysopen 函数来打开文件进行操作,这两个函数都需要通过一个文件句柄(即文件指针)来对文件进行读写定位等操 作。 下面以 open 函数为例: 1:读: open (文件句柄," 文件名")/ open (文件句柄,"文件名"),前提文件必须已经存在,

在Perl中可以用open或者sysopen函数来打开文件进行操作,这两个函数都需要通过一个文件句柄(即文件指针)来对文件进行读写定位等操作。
下面以open函数为例:
1:读:open(文件句柄,"<文件名")/open(文件句柄,"文件名"),前提文件必须已经存在,否则会返回0,出错信息在$!中。
2:写:open(文件句柄,">文件名"),文件如果不存在,那么创建之,如果存在,内容被清空,长度截为0,$!中有出错信息。
3:追加:open(文件句柄,">>文件名"),基本同写,但有一点,文件中的内容不会被清空,新的内容会追加到原文后面。
4:读写:open(文件句柄,"+<文件名"),通过“+<”模式,你可以既可以读文件,又可以写文件。你可以通过tell()?函数在文件内部移动,通过seek()函数进行定位。如果文件不存在,就会被创建。如果文件已经存在,原来的数据不会被清除。
??????open(文件句柄,"+>文件名"),通过“+》”模式,可以同时读写文件,但与上面不同的是,它是破怀性写,会清除原来的内容。
例子:
my $conf = "D:/test.txt";

if(-e $conf)??#判断文件是否存在
{
????open(FILE,"<$conf") or die("No such file");
???
????while($LINE = <FILE>)?????????#读取文件
????{
????????print $LINE;
????????push(@del,$LINE);
????}
????close(FILE);

在P e r l中,d i e函数可以用来在出现错误的时候停止解释程序的运行,并输出一条有意义的

出错消息。正如你在前面已经看到的那样,只要调用d i e函数,就能够输出类似下面的消息:
???died at scriptname line xxx

d i e函数也可以带有一系列的参数,这些参数将取代默认消息而被输出。如果消息的后面

没有换行符,那么消息的结尾就附有at scriptname line xxx字样:
???die "Cannot open";???#prints "Cannot open at scriptname?scriptname line xxx"
P e r l中有一个特殊的变量$ !,它总是设置为系统需要的最后一个操作(比如磁盘输入或输
出)的出错消息。当$ !用于数字上下文时,它返回一个错误号,这个号可能对任何人都没有
什么用处。在字符串上下文中, $ !返回来自你的操作系统的相应的出错消息:

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读