我使用的是perl模块XML :: LibXML。
XML :: LibXML get string,其中包含带有utf8编码的整个xml文件。 我使用 findnodes 和 textContent 从xml获取信息。 但是当我尝试使用 charset = UTF-8 将它们打印到HTML页面时,它会出现像“ ”这样的坏字符。 当我不在html页面的头部使用 charset = UTF-8 时,它是正确的但是我手动打印的页面的其余部分是错误的。 能帮我解决一下吗?
感谢您的建议。
答案 0 :(得分:1)
正如所料,textContent
以“已解码”形式(Unicode代码点)返回文本。文件处理期望字节,因此您需要将文本编码为字节。您可以使用
use open ':std', ':encoding(UTF-8)';
答案 1 :(得分:0)
确保您拥有脚本顶部:
use utf8;
binmode $_, ":utf8" for qw/STDOUT STDIN STDERR/;