if ($have_File_Spec) {
@Encoding_Path = (grep(-d $_,
map(File::Spec->catdir($_, qw(XML Parser Enco
+dings)),
@INC)),
File::Spec->curdir);
}
else {
@Encoding_Path = (grep(-d $_, map($_ . '/XML/Parser/Encodings', @INC
+)), '.');
}
so it should work if you put the file in "the current directory", or in one of the @INC dirs with /XML/Parser/Encodings appended.
If you try '.', note that if this a CGI script, the current directory may not be what you think it is... (in case of doubt, chdir()).
Alternatively, I think you can explicitly call
XML::Parser::Expat::load_encoding(ENCODING) and specify an
absolute path to the file as ENCODING. From Expat.pm:
=item XML::Parser::Expat::load_encoding(ENCODING)
Load an external encoding. ENCODING is either the name of an encoding
+or
the name of a file. The basename is converted to lowercase and a '.enc
+'
extension is appended unless there's one already there. Then, unless
it's an absolute pathname (i.e. begins with '/'), the first file by th
+at
name discovered in the @Encoding_Path path list is used.
(...) The only reason users should use this function is to
explicitly load an encoding not contained in the @Encoding_Path list.
|