当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Converter.convert用法及代码示例


本文简要介绍ruby语言中 Encoding::Converter.convert 的用法。

用法

convert(source_string) → destination_string

转换source_string 并返回destination_string。

source_string 被假定为源的一部分。即 :partial_input=>true 在内部指定。最后应该使用finish方法。

ec = Encoding::Converter.new("utf-8", "euc-jp")
puts ec.convert("\u3042").dump     #=> "\xA4\xA2"
puts ec.finish.dump                #=> ""

ec = Encoding::Converter.new("euc-jp", "utf-8")
puts ec.convert("\xA4").dump       #=> ""
puts ec.convert("\xA2").dump       #=> "\xE3\x81\x82"
puts ec.finish.dump                #=> ""

ec = Encoding::Converter.new("utf-8", "iso-2022-jp")
puts ec.convert("\xE3").dump       #=> "".force_encoding("ISO-2022-JP")
puts ec.convert("\x81").dump       #=> "".force_encoding("ISO-2022-JP")
puts ec.convert("\x82").dump       #=> "\e$B$\"".force_encoding("ISO-2022-JP")
puts ec.finish.dump                #=> "\e(B".force_encoding("ISO-2022-JP")

如果发生转换错误,则会引发 Encoding::UndefinedConversionError Encoding::InvalidByteSequenceError Encoding::Converter#convert 不提供从这些异常中恢复或重新启动的方法。如果要处理这些转换错误,请使用 Encoding::Converter#primitive_convert

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Converter.convert。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。