perl 读写文件

perl 读写文件

perl 编程实现读一个文件,不同内容其结果写入不同文件
要读文件范本如下:
ID1
DFKLJWWOEIFNSVVNXMCNVLKNMXFJSLKDFJKSLDJFASLFJLKSAFD
SAFHSADDFJSDKFJWIEJFJDSFWOJEIOSAJSDJWIEFJDSLFJWEOFLS
DKFWEJFIOSDFJWLEFUSAOFJWKEJFOISADJFLKWJEIOFJSDJFWIOE
ID2
DFKWLEUIOWJFLJSDFWJOEFJLSDFJWOEJFLSDJFJWOEJFSDJFWJEIFLKSJDF
FJWOEEIFSDJFKLWEUIOFJSLDFJWJEOFJSDJFWIOEJFJSDLDJWEFJSDJKEWJ
SFKHKJWEHFSFJWEIOFJSDJFWLUEOISAJDWWKFJSIOAAJFKWEJFSDJFWEIO
ID3
....................
.
.
.
.
.
.
IDn
WOEJFLJFDSOIFOUWEOIJFSLDJFKLWJEIOFJWEDFJSLKDKFKLJFSL
WEFJOSFJSLDJFWJEIOJFSKLDFIWOEJFLSDJFWIOJEFLKSDJFJWOE




结果要求:
每一ID放入一个文件(最好能将结果文件排序)


谢谢!谢谢!
这很难吗?
数据在id文件里

###############################

open IDFILE,"id" or die;

@idfiles;
$currentid;

while(<IDFILE>) {
        if(/(ID\d+)/) {
                print "Start to Processing $1 ...\n";
                $currentid = $1;
                push @idfiles,$1;
                open TEMP,">>",$1;
        } else {
                print TEMP "$_";
        }
}


print "$_\n" foreach(@idfiles);
print scalar @idfiles . "files processed.";

###############################