你在转变什么?数据或XML标签还是其他什么?
我认为你只需要将它读作Latin-1并将其重写为UTF-8,除非你的来源做了一些非常奇怪的事情.解码和编码在文件句柄级别发生.一旦你在Perl中拥有它,它已经在内部UTF-8了.
到目前为止你有什么?你有什么问题?
你的情况是否太复杂而不能仅使用xmllint?
xmllint --encode utf8 --output filename.xml filename.xml.latin1
Run Code Online (Sandbox Code Playgroud)
如果您使用的是XML :: Parser,请参阅Juerd关于该模块的Unicode建议.
如果您要转换的不仅仅是XML文件,iconv可能会有所帮助:
iconv -f ISO-8859-1 -t UTF-8 filename.txt.latin1 > filename.txt
Run Code Online (Sandbox Code Playgroud)
我用xmllint --encode utf8 FILE-NAME,样品:
xmllint --encode utf8 --output test.xml test.xml
Run Code Online (Sandbox Code Playgroud)
将正确转换test.xml(它可能具有的任何编码)到UTF-8,包括XML序言.
| 归档时间: |
|
| 查看次数: |
4574 次 |
| 最近记录: |