perl入门03:文件读入与输出

perl入门03:文件读入与输出,第1张

文件读写主要使用 open 函数,如下图使用方法分为三个部分:

类比Linux重定向;

为待读取的文件或者准备写入的新文件名,一般配合 ARGV 从参数中读取。

常用的标准模式为

考虑到有时文件无法打开的现象,可以在结尾补充说明性的报错信息

首先要理解两种文件的区别---

(1)fastq有四行,第一行开头为 @

(2)fasta只有两行,第一行开头为 >。

因此要将fastq的三四两行删去,同时将第一行的 @ 更换为 >。

还是昨天的那个程序,假设你的文件分为 1.txt 2.txt 3.txt,这个时候不要包含文件头,即所有的文件都是内容

程序修改为:

#$head = <>

while(<>)

{

@line = split(/,/,$_)

$lwfs = $line[7]

$user = join('|',$line[1],$line[2],$line[3],$line[4],$line[6],$line[7])

$info{$lwfs}{'times'} +=1

$info{$lwfs}{'users'}{$user} +=1

}

print "lwsf,user,times\n"

foreach my $key ( keys %info )

{

$times=$info{$key}{'times'}

@users = keys $info{$key}{'users'}

$usercount = $#users+1

print "$key,$usercount,$times\n"

}

注意:读取文件头到$head变量的那句已经注释掉了。

此时运行方法为: perl my.pl 1.txt 2.txt 3.txt 就可以了

perl自己会把所有文件内容都读进来处理的


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8143678.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存