perl如何判断文件句柄已经打开

 我来答
连续用6a43aa2
2018-06-07 · TA获得超过3747个赞
知道大有可为答主
回答量:7283
采纳率:72%
帮助的人:612万
展开全部
#!/usr/bin/perl
use 5.010;

#    (1)
say '(1) ', fileno OUT ? 'yes' : 'no';
#    (2)
open OUT, '>', "filename";
print OUT "abc\n";
say '(2) ', fileno OUT ? 'yes' : 'no';
close OUT;
#    (3)
say '(3) ', fileno OUT ? 'yes' : 'no';
__DATA__


在perl里,fileno()函数可以返回句柄的文件描述符。可以使用fileno函数判断某个变量是否是文件句柄,判断文件句柄是否正常打开,判断文件句柄的类型。
标准输入输出句柄 STDIN, STDOUT和 STDERR 的文件描述符 分别是0,1和 2 (Unix 标准传统),标准文件输入输出句柄的值从3开始,其具体值由句柄打开的顺序决定。若某变异 是一个普通变量,则fileno的返回值 是undef;若某个文件句柄未正常打开或者已关闭,fileno返回的值 也是undef。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式