未だにShift_JIS 全盛の職場ですので、テキストデータを扱う場合は、当然文字コードの変換が必要になります。
Perl だと こんな感じでやっていたのですが、Ruby だと以下の様になります。
# ファイルパス
FILE_PATH = './hoge.txt'
# CP932(Shift_JIS)でファイルを開く
File.open(FILE_PATH, encoding: Encoding::CP932) { |file|
# 1行ずつ読み込み
while row = file.gets
# UTF-8に変換してから、改行除去
row_utf8 = row.encode(Encoding::UTF_8).chomp!
# ここで行に対して行う処理を書く(例:カンマで分割)
values = row_utf8.split(',')
end # while row
}
こんな感じ。