我正在编写一个需要将其输入从UTF-8转码为ISO-8859-1(Latin 1)的应用程序.
一切正常,除了我有时会对某些变形字符进行奇怪的编码.例如,带有2个点(0xEB)的Latin 1 E通常为UTF-8 0xC3 0xAB,但有时也为0xC3 0x83 0xC2 0xAB.
这种情况多次来自不同的来源并注意到第一个和最后一个字符符合我的预期,是否存在我的图书馆不知道的编码规则?
解决方法
$"\xC3\x83\xC2\xAB" ë $use Encode $decode 'UTF-8',"\xC3\x83\xC2\xAB" ë
你有双重编码的UTF-8. Encode::Repair是解决这个问题的一种方法.