2013年2月20日水曜日

Ruby1.9のエンコーディングではまった。

Windows 7のコマンドプロンプトとutf-8/Shift-JISのテキストファイルの処理ではまったのでメモ。


  • スクリプト本体の保存する文字コード(utf-8 or Shift-JIS)
  • マジックコメント(# -*- encoding: UTF-8 -*-)
  • 外部エンコーディングの指定(#! ruby -E Windows-31J:utf-8)
  • Shift JISのファイルをUTF-8に変換して読み込み(open("test.txt", "r:windows-31j:utf-8")


辺りの対処を試行錯誤してたら、解決した。


以下、参考サイト。


Rubyのエンコーディング
OSとRubyスクリプトの文字コードが異なる場合の対策
[ruby] Ruby 1.9.1のm17nについてメモ
class Encoding
Ruby M17N の設計と実装

あたりが参考になった。

0 件のコメント:

コメントを投稿