Ruby 2.5.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Encoding::Converterクラス

class Encoding::Converter

クラス・モジュールの継承リスト: Encoding::Converter < Object < Kernel < BasicObject

要約

文字エンコーディング(文字符号化方式)の変換器のクラスです。既存の変換器より一段細かな処理が可能となります。

Encoding::Converter を用いて変換を行う場合は、Encoding::Converter#convert か、より細かな変換処理が可能な Encoding::Converter#primitive_convert が利用できます。エンコーディングを変換するメソッドはこの他に String#encode, NKF.#nkf などがあります。

特異メソッド

定義 説明
asciicompat_encoding(string) -> Encoding | nil
asciicompat_encoding(encoding) -> Encoding | nil

同じ文字集合を持つ ASCII 互換エンコーディングを返します。

new(source_encoding, destination_encoding) -> Encoding::Converter
new(source_encoding, destination_encoding, options) -> Encoding::Converter
new(convpath) -> Encoding::Converter

Encoding::Converter オブジェクトを作成します。

search_convpath(source_encoding, destination_encoding, options) -> Array

引数で指定した文字エンコーディングの変換の経路を配列にして返します。

インスタンスメソッド

定義 説明
convert(source_string) -> String

与えられた文字列を変換して、変換できた結果を返します。引数の末尾の文字がバイト列の途中で終わっている場合、そのバイト列は変換器内に取り置かれます。変換を終了させるには Encoding::Converter#finish を呼びます。

convpath -> Array

変換器が行う変換の経路を配列にして返します。

destination_encoding -> Encoding

変換先のエンコーディングを返します。

finish -> String

変換処理を終了し、結果文字列の末尾を返します。変換元の文字列の末尾がバイト列の途中で終わっていた場合、保持しているバイト列全てを返します。

insert_output(string) -> nil

変換器内のバッファに文字列を挿入します。バッファに保持された文字列は、次の変換時の変換結果と一緒に返されます。

inspect -> String

Encoding::Converter オブジェクトの情報を簡単に表示します。

last_error -> Exception | nil

直前に変換器で発生した例外に相当する例外オブジェクトを返します。直前の変換で例外が発生していない場合は nil を返します。

primitive_convert(source_buffer, destination_buffer) -> Symbol
primitive_convert(source_buffer, destination_buffer, destination_byteoffset) -> Symbol
primitive_convert(source_buffer, destination_buffer, destination_byteoffset, destination_bytesize) -> Symbol
primitive_convert(source_buffer, destination_buffer, destination_byteoffset, destination_bytesize, options) -> Symbol

エンコーディング変換のためのメソッドの中で、もっとも細かな扱いが可能なメソッドです。

primitive_errinfo -> Array

直前の Encoding::Converter#primitive_convert による変換の結果を保持する五要素の配列を返します。

putback -> String
putback(max_numbytes) -> String

後の変換用に変換器内部で保持しているバイト列を max_numbytes で指定したバイト数だけ返します。max_numbytes を指定しなかった場合は保持しているバイト列の全てを返します。

replacement -> String

変換器に設定されている置換文字を返します。

replacement=(string)

置換文字を設定します。

source_encoding -> Encoding

変換元のエンコーディングを返します。

継承したメソッド

! != __id__ __send__ instance_eval instance_exec method_missing singleton_method_added singleton_method_removed singleton_method_undefined !~ <=> == === =~ _dump class clone define_singleton_method display enum_for eql? equal? extend freeze frozen? hash initialize initialize_copy instance_of? instance_variable_defined? instance_variable_get instance_variable_set instance_variables is_a? itself marshal_dump marshal_load method methods nil? object_id pretty_inspect pretty_print pretty_print_cycle pretty_print_inspect pretty_print_instance_variables private_methods protected_methods psych_to_yaml public_method public_methods public_send remove_instance_variable respond_to? respond_to_missing? send singleton_class singleton_method singleton_methods taint tainted? tap to_a to_ary to_hash to_int to_io to_proc to_regexp to_s to_str trust untaint untrust untrusted? yield_self .yaml_tag ::ARGF ::ARGV ::DATA ::ENV ::FALSE ::NIL ::RUBY_COPYRIGHT ::RUBY_DESCRIPTION ::RUBY_ENGINE ::RUBY_ENGINE_VERSION ::RUBY_PATCHLEVEL ::RUBY_PLATFORM ::RUBY_RELEASE_DATE ::RUBY_REVISION ::RUBY_VERSION ::SCRIPT_LINES__ ::STDERR ::STDIN ::STDOUT ::TOPLEVEL_BINDING ::TRUE