LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 4346|回复: 6

perl如何循环读取文本文件内容

[复制链接]
发表于 2006-4-14 03:02:35 | 显示全部楼层 |阅读模式
#cat list.txt
zhangsan#beijing#8456874
lisi#shanghai#8452136
....

perl如何循环读出list.txt文本内容
传值给 $a =zhangsan $b=beijing $c=8456874
  ..

记得shell 里面比较简单啊

for a in `cat list.txt`
do
..
done

就可以的了 .
perl新手,请教下
发表于 2006-4-14 12:55:22 | 显示全部楼层
#!/usr/bin/perl -w
use strict;

open(MYFILE,"list.txt") or die "cannot open file !";
while(<MYFILE>){
($a,$b,$c)=split(/#/,$_);
print "Namea\tAddressb\tTELc\n";
}
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-14 14:04:33 | 显示全部楼层
Post by 剑心
#!/usr/bin/perl -w
use strict;

open(MYFILE,"list.txt") or die "cannot open file !";
while(<MYFILE>){
($a,$b,$c)=split(/#/,$_);
print "Namea\tAddressb\tTELc\n";
}


Global symbol "$c" requires explicit package name at a.pl line 6.
Global symbol "$c" requires explicit package name at a.pl line 7.
Execution of a.pl aborted due to compilation errors.

什么错误.,是不是要安装什么模块的 .

我好象只装了一个 ..
  [php] ppm> install DBI
====================
Install 'DBI' version 1.50 in ActivePerl 5.8.6.811
====================
Downloaded 558145 bytes.
Extracting 73/73: blib/arch/auto/DBI/Driver_xst.h
Installing C:\Perl\site\lib\auto\DBI\dbd_xsh.h
                .....
                            [/php]
回复 支持 反对

使用道具 举报

发表于 2006-4-14 14:40:11 | 显示全部楼层
[php]#!/usr/bin/perl -w

use strict;

my ($a,$b,$c);
open(MYFILE,"list.txt") or die "cannot open file !";
while(<MYFILE>){
($a,$b,$c)=split(/\#/,$_);

print "Namea\tAddressb\tTELc\n";
}[/php]


这样试试?
回复 支持 反对

使用道具 举报

发表于 2006-4-14 14:50:30 | 显示全部楼层
DBI模块是数据库的接口
与本程序无关

刚才出错的原因是我用了use strict;
变量用前必须先声明,不是Perl必须的
但用了use strict就必须先声明。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-14 18:28:14 | 显示全部楼层
Post by 剑心
DBI模块是数据库的接口
与本程序无关

刚才出错的原因是我用了use strict;
变量用前必须先声明,不是Perl必须的
但用了use strict就必须先声明。


谢谢 ! 可以了  ..

看资料去
回复 支持 反对

使用道具 举报

发表于 2006-4-14 20:52:48 | 显示全部楼层
use strict 可以减少很多不必要的错误,坚持使用是好事。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表