Ruby初心者スレッドPart4
■ このスレッドは過去ログ倉庫に格納されています
0667デフォルトの名無しさん
2006/03/13(月) 23:19:29CygwinはEUCでセットアップしてあります。RDEの文字コードもEUC/LFに設定してあります。
この環境で,以下のスクリプトを実行しました。※ gyokuroは文字列を形態素に分解します。
require 'gyokuro/gyokuro'
gyokuro = Gyokuro.new('本日は晴天なり。')
puts gyokuro.collect { |morpheme| morpheme.origin_yomi } #=> ['ホンジツ', 'ハ', 'セイテン', 'ナリ', '。']
結果は,正しく形態素解析されましたが,コンソールウィンドウの出力がはげしく文字化けしてしまいます。
形態素解析はEUCの辞書に基づいて行われているので,正しく分割されているということは
コードはEUCでrubyに引き渡され,EUCでgyokuroで処理され,EUCで出力されたのだと思われますが,
コンソールウィンドウはそれをSJISとして表示しようとするので,文字化けするのではないかと思われます。
試しにputsする文字列を.tosjisしたら,正しく表示されました。
しかしputsのたびにいちいち.tosjisを置くのはわずらわしく思われます。
コンソールウィンドウの表示だけeucをsjisに変換するようなことはできないでしょうか。
■ このスレッドは過去ログ倉庫に格納されています