求高手帮忙

求高手帮忙

谁能教教我用什么语句打开多个文件并读取出里面的内容!

@file = <c\:\\perl\\data\\*.sgm >;
open(File @file );

为什么这样的语句不行呢?
while(<>){print;}

然后这样运行

perl test.pl c:\perl\data\*.sgm
打开一个文件需要一个文件句柄,当然不包括你在外部用File::Tee 包装过的
你看看你自己写的代码
打开一陀文件只用了一个文件句柄FILE,这可能吗?
能否举个类似的例子供我参考!
谢谢了!


QUOTE:
原帖由 bdwangchen 于 2008-5-20 20:04 发表
能否举个类似的例子供我参考!
谢谢了!

那个例子本身就是可以用的,你运行一下看看嘛
我真的不理解!我是做毕业设计中用到了perl以前从没接触过!
能不能说的详细一点啊!我真的理解不了
while(<>){print;}
然后这样运行
perl test.pl c:\perl\data\*.sgm
这是什么意思,读取文件内容是第一步下一步是写到另一个文本稳当中,
这是我自己写的一个打开其中一个文件的程序,但是打开多个文件的对我来说就有难度了.
#!user/bin/perl
open(infile,"c:\\chtb_001.txt")||die"can't open";
my $i=0;
my @aa;
my @bb;
while(<infile>)
{
        my $a=$_;
        if($i%2==0)
        {
                push @aa,$a;
        }
        else {
                if($i%2==1)
        {
                push @bb,$a;
        }
}}
$i=$i+1;
open(File,">>e:\\1.txt") or die "can't open file\n";
         foreach (@aa)
     {print"$_\n";
     print File "$_\n";
     }
close(File);  
open(File,">>e:\\2.txt") or die "can't open file\n";
         foreach (@bb)
     {print"$_\n";
     print File "$_\n";
     }
close(File);  
我也知道要用while循环循环打开文件!但是我不会写!不知道从何下手,身边也没有有关的例子.
1.你知道如何打开一个文件
2.你也知道循环
这不就结了么?

[Copy to clipboard] [ - ]
CODE:
my @file = <c\:\\perl\\data\\*.sgm >; #数组存放的所有需要打开的文件
foreach ( @file ){
open (FILE,$_) or die "Fail to open $_ $! ";
文件已经打开,该干啥干啥
close FILE
}



QUOTE:
原帖由 bdwangchen 于 2008-5-20 20:04 发表
能否举个类似的例子供我参考!
谢谢了!

#!/usr/bin/perl
#
# test.pl
#

use strict;
use warnings;

my $file = 'e:/1.txt';

open FILE, "$file" or die "$!";

while (<>) {
    print FILE $_;
}

这样运行
>perl test.pl c:\perl\data\*.sgm

这样就能把 *.sgm 中的内容写到 1.txt 里去了
十分感谢!我已经成功把他们读入到@file后分别存到两个TXT文件中!
再次感谢!多谢指点