【问题标题】:How to make iconv ignore the encoding errors?如何让 iconv 忽略编码错误?
【发布时间】:2010-10-05 17:11:49
【问题描述】:

我有一个长文本文件,其中包含一些 UTF-16 中无效编码的字符。到目前为止,我一直在尝试使用以下代码对其进行转换:

ic = Iconv.new( 'UTF-8//IGNORE', 'UTF-16' )
urf_8_str = ic.iconv( an_invalid_encoded_utf_16_string )

我得到一个 Iconv::InvalidCharacter 异常。

我使用的是 OS X 10.6(因为 iconv 实现在 Mac 机器上似乎有点特殊)和 Ruby 1.8

你知道有什么方法可以在 Ruby 中转换带有无效字符的字符串吗?

谢谢!

【问题讨论】:

    标签: ruby encoding iconv


    【解决方案1】:
    ic = Iconv.new( 'UTF-8//IGNORE', 'UTF-16' )
    urf_8_str = (ic.iconv(bad_string) rescue 'oops, bad encoding')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-12
      • 2021-01-09
      • 2012-07-17
      • 2022-06-15
      • 2015-08-22
      • 2010-12-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多