浏览 3773 次
锁定老帖子 主题:ruby 使用csv读取文件问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-03-05
最后修改:2011-03-05
data.txt文件内容如下[文件编码为utf-8] File.readlines("data.txt").each do |line| puts line end 在控制台下得到的结果正常
readdata_csv.rb文件内容如下
require 'csv' CSV.open("data.txt","r").each do |person| puts person.inspect end 在控制台下得到的结果中文乱码 ["\345\274\240\344\270\211", "12", "m"]
如果将代码改为
require 'csv' people=CSV.parse(File.read('data.txt')) puts people 此时得到的结果正常,比较困惑。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-03-07
blessdyb 写道 data.txt文件内容如下[文件编码为utf-8] File.readlines("data.txt").each do |line| puts line end 在控制台下得到的结果正常
readdata_csv.rb文件内容如下
require 'csv' CSV.open("data.txt","r").each do |person| puts person.inspect end 在控制台下得到的结果中文乱码 ["\345\274\240\344\270\211", "12", "m"]
如果将代码改为
require 'csv' people=CSV.parse(File.read('data.txt')) puts people 此时得到的结果正常,比较困惑。 查了一下,引入jcode这个库就正常了,读出来了\345....都是八进制的数字,转成16进制再转码就是原来的中亠了 |
|
返回顶楼 | |