我是ruby新手,所以请原谅我的无礼.

我有一个有两列的CSV.一个用于动物名称,一个用于动物类型.

require "csv"

def write_file
  h = { 'dog' => 'canine', 'cat' => 'feline', 'donkey' => 'asinine' }

  CSV.open("data.csv", "wb") do |csv|
    csv << [???????????]
  end
end

当我打开文件阅读时,我打开了File.open("blabla.csv", headers: true)

推荐答案

试试这个:

require 'csv'
h = { 'dog' => 'canine', 'cat' => 'feline', 'donkey' => 'asinine' }
CSV.open("data.csv", "wb") {|csv| h.to_a.each {|elem| csv << elem} }

结果将是:

1.9.2-p290:~$ cat data.csv 
dog,canine
cat,feline
donkey,asinine

Ruby相关问答推荐

类似于模块的 attr_accessor 和 attr_reader 的东西?

无法解析音频文件 track1.m4a

如何在 ruby​​ 中通过 SSL 调用 HTTP POST 方法?

C# 中的 typeof 保留字是否有 Ruby 类似功能?

Rspec: expectvsexpect什么区别?

在 Ruby 中导出环境变量

如何记录在 Ruby 程序中调用的每个方法?

Ruby检测方法

我可以在 Ruby 中使用默认值创建一个数组吗?

Rails 控制台中没有数据库连接

无法从同一网络上的另一台计算机访问本地 Sinatra 服务器

如何使用 yardoc 列出未记录的模块/类/常量/方法?

从Electron邮件中删除签名和回复

如何通过匹配文本来 Select node

Ruby 中的标准文件命名约定

Ruby - Array#<< 和 Array#push 之间的区别

如何计算Ruby日期的星期几?

何时使用在 Ruby 中启动子进程的每种方法

您的 Ruby 版本是 2.0.0,但您的 Gemfile 指定了 2.1.0

为什么 Ruby setter 需要self .班级内的资格?