読者です 読者をやめる 読者になる 読者になる

Ruby1.9とTokyoCabinet

Ruby TokyoCabinet

Ruby1.9でTokyoCabinetを使っていて、UTF-8な文字列をTokyoCabinetのHDB(ハッシュデータベース)につっこんでいって、getするとASCII-8BITで返ってくるということで大分はまっていた(Ruby1.9だと文字コード(String#encoding)まで一致しないと同じ文字列だと見なされない)。

ファイルの読み込みなら

File.open('hoge.txt', 'r:utf-8')

とかやれば回避できそうだと思うんだけど、TokyoCabinetのようなものを使うときってforce_encodingを使うしかないんだろうか?この辺のbest practice的なところがよく分からないなー。