【问题标题】:How do I convert ISO-8859-8-i to UTF-8?如何将 ISO-8859-8-i 转换为 UTF-8?
【发布时间】:2012-08-07 00:34:04
【问题描述】:

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

【问题讨论】:

    标签: c unicode iconv


    【解决方案1】:

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

    至于“无效的多字节序列”,也许你把源/目标字符集参数顺序倒了?如果这不是问题,那么您的文件可能包含未在 ISO-8859-8 字符集中定义的字节,即它是无效的......

    【讨论】:

    • 谢谢,是的,你是对的。我在解码 base64 编码的电子邮件时遇到了一个单独的问题。
    • 我以前从未见过在字符集上使用过这样的后缀。这在任何地方都有记录吗?
    • 我在 Wikipedia 上找到了它...他们声称这是 IANA 字符集代码,但我没有看到任何参考。有人愿意发布“需要引用”模板吗? ;-)
    • RFC1556«MIME中双向文本的处理»。
    猜你喜欢
    • 2011-08-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-21
    • 2012-01-05
    • 2014-08-29
    • 2014-04-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多