2

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 (Mac マシンでは iconv の実装が少し特殊なように見えるため) と Ruby 1.8 を使用しています。

無効な文字を含む Ruby の文字列を変換する方法を知っていますか?

ありがとう !

4

1 に答える 1

-1
ic = Iconv.new( 'UTF-8//IGNORE', 'UTF-16' )
urf_8_str = (ic.iconv(bad_string) rescue 'oops, bad encoding')
于 2010-10-05T17:19:51.247 に答える