全部学习汇总: GreyZhang/perl_basic: some perl basic learning notes. (github.com)
fileread是MATLAB中的一个函数,可以实现对一个文本文件的全文读取。读取后的内容返回给一个字符串量。在Python中也有类似的功能,不过MATLAB中的这个更能够直观看出函数的功能,因此题目暂取这样。
之前完成过一个readlines功能,借由那个功能实现fileread功能在Perl中实现起来十分简单。
以下是之前的实现的readlines功能函数代码:
sub ReadLines
{
my $file_name = shift;
open(LINES,"<$file_name") or die "can not open: $!";
my @lines = <LINES>;
close LINES;
return @lines;
}
在上面的代码基础上实现读取整个文本为一个字符串在Perl中实现起来十分简单,所需要做的仅仅是把readlines的返回结果进行拼接,具体的实现代码如下:
sub FileRead
{
my $file_name = shift;
join '',ReadLines($file_name);
}
测试结果如下:
完成了上面简单的两个小函数,重新构建我之前想要完成的功能,重新修改后的代码看着简单清晰了许多。这多少给了我一点启示:有些路还是需要走的,磨刀不误砍柴工!