Perl的文件操作

Perl的文件操作与C类似,都需要先获得文件句柄(类似于指针),获得方法如下:

open(HANDLE, "filename");        //获取读文件句柄
open(HANDLE, ">filename");        //获取写文件句柄,若文件存在则先清空内容再写
open(HANDLE, ">>filename");        //获取写文件句柄,若文件存在则在原内容之后追加

>和>>的意义与linux中数据流重定向类似

Tips:获取读文件句柄时不需要加<


读取文件一般采用尖括号运算符<>,如

$a = <HANDLE>;	//读取文件中的一行
@a = <HANDLE>;	//将文件整个赋给数组@a,数组的每个元素对应文件的一行

还有一种方法是在while循环的条件判断中直接使用<>,如

while(<HANDLE>){
	print $_;
}

这时系统默认变量$_代表了文件的每一行

Tips:Perl做文件操作时,读取的每一行还包含行尾字符。如果只需要文本,则需要使用chomp命令进行处理。

 

写入文件的形式如下

print HANDLE List;

其中List是要写入的内容。在List中,用逗号分隔各个项目,如

print HANDLE "This entry was written at ", scalar(localtime), "/n";

加粗部分即为List

Tips:Perl的写文件操作只是将数据先写入缓存,过段时间后再从缓存写入文件。因此,写文件操作结束后,应使用

close(HANDLE);

关闭句柄并刷新缓存,使得数据即时写入文件


综上所述,不难理解Perl中的标准输入输出(实际上STDIN, STDOUT可看做特殊的文件句柄)

标准输出:

print STDOUT List;

STDOUT可以省略,因此形式一般为

print List;
标准输入:
$a = <STDIN>;

还有一种方法是在while循环的条件判断中直接使用<>,如
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值