2015年1月27日火曜日

[OCaml]godi-ocaml-textでShiftJISからUTF8へ変換

ShiftJISからUTF8に文字列を変換しようと思って、Camomileを久しぶりに使おうとしたのだけど、すっかり使い方を忘れてしまっていた。

iconvライブラリを使った文字列処理のライブラリはないものかなーと探してみたら、
GODI Package godi-ocaml-text
A library dealing with text as sequence of unicode characters.
があった。

モジュール定義を眺めてみたら、すごく簡単そうだったので試してみた。

ライブラリはOPAMでインストールできる。
$ opam install text

utopで試してみた。
utop[16]> #require "text";;
utop[18]> Encoding.recode_string;;
- : src:bytes -> dst:bytes -> bytes -> bytes = 
utop[22]> Encoding.recode_string ~src:"Shift_JIS" ~dst:"UTF8" "\x95\x5c\x8e\xa6";;
- : bytes = "表示"

おお、これは簡単。なかなか良いね。