使用Ruby 内置的 Iconv类就可以做到了 ,详细的请参考ruby参考手册
这里给出一个样例
require "iconv"
line = File.open('c:\unicode.txt',"w")
result = Iconv.iconv("GB2312","UTF-8",line)
result.puts()
简单说一下吧,假设你有一个名为example.txt的文件,里面的内容如下:bbb ccc 123
ddd aaa 456
abc efg 789
695 aaa uwi
注意,这里我举的例子每一列是用空格分隔的。
用ruby读取的代码如下:
f = File.open("example.txt")
f.each_line { |line| p line.split.first if line =~ /\saaa\s/ }
运行结果 #=>"ddd"
"695"
OK,大功告成。