+ -
当前位置:首页 → 问答吧 → 咋用perl同时创建100+个文件

咋用perl同时创建100+个文件

时间:2011-04-06

来源:互联网

$handle = "000";
foreach(1..100) {
        open($handle++,">Cluster$_");
}
这个方法在声明了use strict;后,会提示出错,去掉这个声明,则可以创建,不过这样貌似不规范吧,有么有什么好的方法,解决提出的问题。而且,在后期,需要能随便调用文件的句柄,对相对应的文件进行写入数据操作。

作者: thuski   发布时间: 2011-04-06

这个创建方法,在不使用use strict的时候,可以完成同时多个文件的创建,而且,可以调用相应的句柄变量,对文件进行写入数据的操作,不过,要是加上use strict,就会提示出错,不能进行。所以想问问有没有什么号的方法可以同时创建多个文件,并可以方便的对这些不同的文件进行打开,写入数据的操作

作者: thuski   发布时间: 2011-04-06

报错信息如下:
Can't use string ("H000") as a symbol ref while "strict refs" in use at test.pl
line 19, <STDIN> line 1.

作者: thuski   发布时间: 2011-04-06

首先要知道 use strict 编译指示的意义

再一个 就要了解下  local

作者: haokanwk   发布时间: 2011-04-06

$hash{$handle++} = new IO::File( "> Cluster$_" );

作者: flw   发布时间: 2011-04-06

回复 flw


    我了解一下IO这个模块,因为平时基本很少用到模块处理,所以了解的比较少。先谢谢

作者: thuski   发布时间: 2011-04-06

回复 haokanwk


    平时写代码时,更习惯对变量声明为my,local没有用过。呵呵。

作者: thuski   发布时间: 2011-04-06

回复 thuski

那就看看 《高级Perl编程》中 局部化文件句柄 部分

作者: haokanwk   发布时间: 2011-04-06

高级Perl编程?我现在手里只有小骆驼,大骆驼,perl编程思想,还有一本英文版的“master regex”

作者: thuski   发布时间: 2011-04-06