XML::SimpleでXML ファイルを読み取ろうとすると、次のエラー メッセージが表示されることがあります。
ファイルのファイル パーサー コンテキストを作成できませんでした ...
グーグルで調べたところ、libxml-libxml-perl に問題があるようで、私が使用しているバージョン (1.59-2) で修正されるはずです。
何か案は?
編集:(コード)
sub Read
{
my ($file, $no_option) = @_;
my %XML_INPUT_OPTIONS = ( KeyAttr => [], ForceArray => 1 );
if ((defined $file) && (-f $file))
{
my @stats = stat($file);
if ((defined $XML_CACHE{$file})
&& ($stats[9] == $XML_CACHE{$file}{modif_time}))
{
return ($XML_CACHE{$file}{xml});
}
else
{
my $xml = eval { XMLin($file,
(defined $no_option ? () : %XML_INPUT_OPTIONS)) };
AAT::Syslog("AAT::XML", "XML_READ_ERROR", $@) if ($@);
$XML_CACHE{$file}{modif_time} = $stats[9];
$XML_CACHE{$file}{xml} = $xml;
return ($xml);
}
}
return (undef);
}
はい、XML::Simpleキャッシュ機能を使用する必要があります...