[ruby-list:48523] String#encodeのオプション次第でConverterNotFoundErrorが発生する

From: 竹澤 陽 <y-takezawa@...>
Date: 2011-11-10 04:57:11 UTC
List: ruby-list #48523
竹澤です。

ruby1.9.2-p290でString#encodeを使っていた所、universal_newlineとreplaceをオプションに指定すると、ConverterNotFoundErrorが発生するようです。
呼び出し方に何か問題があるのでしょうか?

src = "text"
src.encoding   # => #<Encoding:UTF-8> 

# universal_newlineを指定しない場合(正常)
src.encode("UTF-8", :invalid => :replace, :replace => '?')   # => "text"

# universal_newlineを指定した場合(例外)
src.encode("UTF-8", { :invalid => :replace, :replace => '?', :universal_newline => true })
Encoding::ConverterNotFoundError: code converter not found (universal_newline)
	from (irb):4:in `encode'
	from (irb):4
	from /Users/valid/.rvm/rubies/ruby-1.9.2-p290/bin/irb:16:in `<main>'

以上、よろしくお願いします。

────────────────────
    株式会社アーベルソフト
        システム部  竹澤 陽
────────────────────

In This Thread

Prev Next