如何将ISO-8859-8-i转换为UTF-8?

时间:2012-08-09 17:57:23

标签: c unicode iconv

我收到了一封使用charset iso-8859-8-i的电子邮件。 iconv说这是一个不受支持的字符集。我尝试使用iso-8859-8,但是在“无效的多字节序列”中出现错误。知道如何将此字符串转换为UTF-8吗?

1 个答案:

答案 0 :(得分:9)

只需将编码名称替换为"iso-8859-8"即可。 -i后缀用于表示它是按逻辑顺序排列的,而不是"iso-8859-8"传统意义上的向后“视觉顺序”。 iconv无论如何都无法专门处理“视觉秩序”,所以它应该很好地转换它。

对于“无效的多字节序列”,或许你可以向后获得source / dest charset参数顺序?如果那不是问题,那么你的文件可能包含未在ISO-8859-8字符集中定义的字节,即它无效......