[ruby]「嶽」の文字化け問題
Ruby1.8.6で「嶽」の字をtosjisでShift-JISに変換すると、なんだか意図しない文字(F7 D3 0A)に変換されてしまった。
(utf-8で保存して実行してね。)require 'kconv' str="嶽" print str.tosjis
Rubyist Magazine - 標準添付ライブラリ紹介 【第 3 回】 Kconv/NKF/Iconvによると、
>先述の Kconv#to* では変換元の文字コードを推測しているため、推測が外れていた場合は変換結果が文字化けしてしまいます。このような危険性を避けるため、変換元の文字コードが分かっている場合は、なるべく文字コードを明示的に指定するようにしましょう。とのこと。
でちゃんと変換できた。print str.kconv(Kconv::SJIS, Kconv::UTF8)
"嶽 文字化け"でググっても出てこなかったので、とりあえず記事にしておこう。
ちなみに、「佐渡ケ嶽部屋」もダメだった。「嶽」の字が鬼門らしい。
カテゴリ:
ruby
トラックバック(0)
このブログ記事を参照しているブログ一覧: [ruby]「嶽」の文字化け問題
このブログ記事に対するトラックバックURL: http://mogya.com/mt/mt-tb.cgi/740
コメントする