参考博文:
http://comments.gmane.org/gmane.comp.lang.ruby.japanese/5658
http://permalink.gmane.org/gmane.comp.lang.ruby.japanese/5662
有一个文本文件test.txt (或者test.csv),其内容为:
Fred Bloggs,Manager,Male,45
Laura Smith,Cook,Female,23
Debbie Watts,Professor,Female,38
Ruby 代码:
#!/usr/bin/ruby
require 'csv'
# CSV.open('test.csv','r') do |person|
CSV.open('test.txt','r') do |person|
# p person
puts person.inspect
end
按照书中的示例,代码应该打印三个数组,
["Fred Bloggs", "Manager", "Male", "45"]
["Laura Smith", "Cook", "Female", "23"]
["Debbie Watts", "Professor", "Female", "38"]
但实际的运行结果如下:
输出:
<#CSV io_type:File io_path:"test.txt" encoding:GBK lineno:0 col_sep:"," row_sep:"\r\n" quote_char:"\"">
后来经过调查得知,自己前不久将ruby的版本从1.8升级至了→
ruby 1.9.2p180 (2011-02-18 revision 30909) [i686-linux],
而ruby1.9中CSV.open的API发生了变更,在ruby1.9中要想打印或者输出csv/txt的文件内容,
需要按照如下的写法:
require 'csv'
CSV.open(...) do |csv|
csv.each do |row|
p row
end
end
分享到:
相关推荐
ruby193-ruby-1.9.3.484-50.el6.centos.alt.x86_64.rpm
ruby193-ruby-1.9.3.484-49.el6.centos.alt.x86_64.rpm
这些变化使得Ruby 1.9在处理大数据量和复杂逻辑时更加高效和灵活。 ### 命令行提示符和Ruby安装 书中首先介绍了如何在命令行环境下启动Ruby解释器,这是进行Ruby编程的基本前提。安装Ruby可以通过多种途径实现,...
ruby193-ruby-irb-1.9.3.484-49.el6.centos.alt.noarch.rpm
ruby193-ruby-irb-1.9.3.484-50.el6.centos.alt.noarch.rpm
在Ruby 1.9和2.0这两个版本中,语言有许多关键性的改进和优化。例如,1.9版本引入了Unicode字符串处理,提高了对字符串编码的支持,使得开发者可以更好地处理多语言文本。此外,1.9对块和 Proc 对象的处理方式进行了...
ruby193-ruby-doc-1.9.3.484-49.el6.centos.alt.x86_64.rpm
ruby193-ruby-libs-1.9.3.484-49.el6.centos.alt.x86_64.rpm
ruby193-ruby-libs-1.9.3.484-50.el6.centos.alt.x86_64.rpm
ruby193-ruby-doc-1.9.3.484-50.el6.centos.alt.x86_64.rpm
ruby193-ruby-devel-1.9.3.484-50.el6.centos.alt.x86_64.rpm
ruby193-ruby-devel-1.9.3.484-49.el6.centos.alt.x86_64.rpm
JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等... jfinal-1.9-all.zip
ruby193-ruby-tcltk-1.9.3.484-50.el6.centos.alt.x86_64.rpm
ruby193-ruby-tcltk-1.9.3.484-49.el6.centos.alt.x86_64.rpm
在这一版中,作者深入浅出地讲解了Ruby 1.9的改进和新特性,旨在帮助开发者更好地理解和利用这个版本的优势。 1. **Ruby 1.9的关键改进**: - 字符串编码:Ruby 1.9引入了对多种字符编码的支持,使得处理多语言...
在Windows环境下安装Ruby 1.9,通常会涉及到编译环境的配置,因为Ruby的源码需要通过编译才能在Windows系统上运行。不过,如果你选择的是预编译的二进制zip包,这个过程就会简化很多。下面,我们将详细讨论如何通过...
官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装