酒井です。

先日たまたま気づいたのですが、KconvでBMPに含まれない文字を変換すると、
出力エンコーディングで表現可能であっても、空文字列になってしまうようで
す。

  Kconv.kconv([0x1D516].pack("U"), Kconv::UTF16, Kconv::UTF8)
  #=> ""
  
  Kconv.kconv("\xd8\x35\xdd\x16", Kconv::UTF8, Kconv::UTF16)
  #=> ""
  
  Kconv.kconv("\xfe\xff\xd8\x35\xdd\x16", Kconv::UTF8, Kconv::UTF16)
  #=> ""

これはKconv(= NKF)の仕様なのでしょうか?

--
酒井 政裕 / Masahiro Sakai