- 论坛徽章:
- 0
|
ruby 使用csv读取文件问题
data.txt文件内容如下[文件编码为utf-8]
张三,12,m
李四,22,f
readdata.rb文件内容如下
Ruby代码- 1.File.readlines("data.txt").each do |line|
- 2. puts line
- 3.end
复制代码 在控制台下得到的结果正常
readdata_csv.rb文件内容如下
Ruby代码- 1.require 'csv'
- 2.
- 3.CSV.open("data.txt","r").each do |person|
- 4. puts person.inspect
- 5.end
复制代码 在控制台下得到的结果中文乱码
["\345\274\240\344\270\211", "12", "m"]
["\346\235\216\345\233\233", "22", "f"]
如果将代码改为
Ruby代码- 1.require 'csv'
- 2.
- 3.people=CSV.parse(File.read('data.txt'))
- 4.puts people
复制代码 此时得到的结果正常,比较困惑。
查了一下,引入jcode这个库就正常了,读出来了\345....都是八进制的数字,转成16进制再转码就是原来的中亠了 |
|