methods=
sublibraries=
requires=
classes=Iconv,Iconv=Failure,Iconv=BrokenLibrary,Iconv=IllegalSequence,Iconv=InvalidCharacter,Iconv=InvalidEncoding,Iconv=OutOfRange
is_sublibrary=false

Iconv  UNIX 95  iconv() ؿΥåѡǡ
ޤޤʸηϴ֤ʸѴԤʤޤ

ܺ٤ [[url:http://www.opengroup.org/]] Υ饤ɥȤ
ȤƲ

  * [[man:iconv(3)]]
  * [[man:iconv_open(3)]]
  * [[man:iconv_close(3)]]
  * [[url:http://www.opengroup.org/onlinepubs/009695399/basedefs/iconv.h.html]]

=== 

ɤʸηϤѤǤ뤫ϥץåȥե¸ǤʸηϤ򤢤魯ʸץåȥե¸Ǥܸ EUC 򤢤魯ʸ EUC-JP, euc-jp, eucJP ʤɰۤʤ礬ޤΥץåȥեˤ㤤ۼ뤿ˡ
ext/iconv/charset_alias.rb ѰդƤޤ
GNU եȥ texinfo ([[url:http://www.gnu.org/software/texinfo/]]) ˴ޤޤե config.charset ʲΥߥ顼Ȥ

 * [[url:http://tug.ctan.org/cgi-bin/getFile.py?fn=/macros/texinfo/texinfo/intl/config.charset]]
 * [[url:http://ring.riken.go.jp/archives/text/CTAN/macros/texinfo/texinfo/intl/config.charset]]

ext/iconv/ ֤ext/iconv/ ǼΤ褦˼¹Ԥ

  ruby extconf.rb
  make

iconv.rb ޤ iconv.rb ץåȥեˤʸηϤ򤢤魯ʸΰ㤤ۼޤ

config.charset Υ饤󥹤 LGPL ʤΤǡ줿 iconv.rb ˤ LGPL ŬѤޤ

=== 

  require 'iconv'
  euc = ["a4a2a4a4a4a6a4a8a4aa"].pack("H*") # 
  sjis = ["82a082a282a482a682a8"].pack("H*")
  iconv = Iconv.new('SHIFT_JIS', 'EUC-JP')  # EUC-JP  SHIFT_JIS Ѵ
  str = iconv.iconv(euc)
  str << iconv.iconv(nil)
  p( str == sjis )

(1)  [[c:Iconv]] Υ󥹥󥹤, [[m:Iconv#iconv]] ᥽åɤȤ
      cd = Iconv.new(to, from)
      begin
        input.each {|s| output << cd.iconv(s)}
        output << cd.iconv(nil)      # don't forget this
      ensure
        cd.close
      end
(2) [[m:Iconv.open]] ֥åĤǸƤӽФ
      Iconv.open(to, from) do |cd|
        input.each {|s| output << cd.iconv(s)}
        output << cd.iconv(nil)
      end
(3) (2) û̷
      Iconv.iconv(to, from, *input.to_a)

=== 

  * ɸźե饤֥Ҳ 3  Kconv/NKF/Iconv ([[url:http://jp.rubyist.net/magazine/?0009-BundledLibraries#l30]])
