;3、读3行(大文件及特殊处理需"/>

广州明生医药有限公司


perl文件读取的几种处理方式小结

网络编程 perl文件读取的几种处理方式小结 06-21

1、单行(大文件处理):


my $oneline = <$FL> 或
while($line=<H>)
{ }

2、读取全部(小文件处理):


open (my $in, "path ") or die "open error: $! ";
my @lines = <$in> ;

3、读3行(大文件及特殊处理需要):


open (my $in, "path ") or die "open error: $! ";
my @lines;
push (@lines, scalar <$in> ) for (1..3);

4、每次按条件读入三行,并且按照条件输出两行。或根据其他具体要求修改达到相应目的。


while (<TEST>) {
if(index ($_, "=") > -1){
my $position=tell(TEST);
my $keyword_line=$_;
my $line_1=<TEST>;
my $line_2=<TEST>;
# @a=split//,$keyword_line; 比较它们的元素是否相等,一直没成功
# @b=split//,$line_1; 利用if ($a[0]eq $a[0])来判断
# @c=split//,$line_2;
if (($line_2)&&(index($line_2, "=")>-1)){ # 或者if ($line_2=~/=/)
print OUTFILE "$_$line_1";
}
if (!($line_2)) { print OUTFILE "$_$line_1"; last; }
seek(TEST, $position, 0);
}
}

perl调用外部命令(g)awk的方法
但是,linux系统的常用小工具awk天生对列操作友好,有时直接在perl中调用awk比写相应的perl脚本要方便有效的多。比如用system插入awk语句:system(gawk'{print$

perl对长度不一文本的行列进行置换的实现代码
有时遇到各行或各列的长度不一致时就麻烦了,虽然可以在R里面把文件按最长的行(列)填充,但是不便,所以想起用perl去实现一个。由逗号分隔的不定

perl哈希hash的常见用法介绍
基本用法#初始化%h为空数组%h={};#用数组初始化%h为a=1,b=2%h=('a',1,'b',2);#意义同上,只是另一种更形象化的写法。%h=('a'=1,'b'=2);#如果key是字符串,可以省略


编辑:广州明生医药有限公司

标签:数组,初始化,长度,大文件,条件