変数とundefをグローバル化し、unixのデータセグメントスペースを増やし、変数をローカライズしようとしましたが、それでも同じエラーが発生します。約750個のファイルを処理する必要があります。誰か助けてもらえますか?ありがとう。ファイル全体を文字列に読み込むことが問題になる可能性があることはわかっています。しかし、他の方法はわかりません。しかし、それでも私は文字列をグローバルとして宣言し、それを=""にします。次の反復でメモリを解放する必要がありますか?
foreach my $file_name (@dir_contents)
{
if(-f "rawdata/$file_name")
{
$xmlres="";
eval {
while(<FILE>)
{
$xmlres.=$_;
}
close FILE;
***$doc=$parser->parsestring($xmlres);***
foreach my $node($doc->getElementsByTagName("nam1"))
{
foreach my $tnode($node->getElementsByTagName(("name2")))
{
//processing
}
}
}
}}