in reply to UTF8 issue with XML::XPath
Are you sure it's the toString method and not the print? Try it under the debugger and see if x $xp->find('/conf')->get_node(1)->toString looks OK.
For backward compatibility reasons perl automagically encodes strings in ISO-8859-1 when outputing to a filehandle with no known encoding. This happens even if your locale is utf-8. So you need to either do a binmode STDOUT, ':utf8' before the print, or set the environment variable PERL_UNICODE to S, in bash: PERL_UNICODE=S ./my_script.
|
|---|