Ruby on rails 读取.txt文件,对其进行操作,并在Ruby中将其推送到.csv

Ruby on rails 读取.txt文件,对其进行操作,并在Ruby中将其推送到.csv,ruby-on-rails,ruby,csv,Ruby On Rails,Ruby,Csv,我对Ruby有点陌生,但我似乎不能让它工作 下面是杂货店列表2.txt的外观: beer, milk, apples, bacon 这是我想要在.csv文件中返回的内容,但我甚至不知道从哪里开始重新格式化它,使其看起来像这样 Item 1 -- beer Item 2 -- milk Item 3 -- apples Item 4 -- bacon 这是我的密码: # reading the grocery list from grocery_list2.txt and splitti

我对Ruby有点陌生,但我似乎不能让它工作

下面是杂货店列表2.txt的外观:

beer,  milk,  apples,  bacon
这是我想要在.csv文件中返回的内容,但我甚至不知道从哪里开始重新格式化它,使其看起来像这样

Item 1 -- beer
Item 2 -- milk
Item 3 -- apples
Item 4 -- bacon
这是我的密码:

# reading the grocery list from grocery_list2.txt and splitting at each ","
csv_grocery_list = IO.read("grocery_list2.txt").split(",")

#I want this to open a new CSV file called grocery_list3.csv and put in my grocery list
CSV.open("grocery_list3.csv", "w") do |csv|
csv_grocery_list.each do |item|
    csv << p
 end
end
#从杂货店列表2.txt读取杂货店列表并在每个“,”处拆分
csv_grovery_list=IO.read(“grovery_list2.txt”).split(“,”)
#我想打开一个新的CSV文件,名为screery_list3.CSV,并将其放入我的购物清单中
CSV.open(“杂货店列表3.CSV”,“w”)do | CSV|
csv|U杂货店|U清单。每个do|项目|

csv您的代码几乎是正确的。看起来您是从一行上的一组字段开始的,所以您需要像将项目放入数组一样使用split。接下来,打开一个csv文件进行写入,在数组上迭代(使用索引,这样您就可以拥有项目编号),然后将其写入新的csv文件

注意:csv推送操作需要列列表,即使只有一列

csv_grocery_list = IO.read("grocery_list2.txt").split(",")

CSV.open("grocery_list3.csv", "w") do |csv|
  csv_grocery_list.each_with_index do |item, index|
    csv << ["Item #{index + 1} -- #{item}"]
  end
end
csv\u screery\u list=IO.read(“screery\u list2.txt”).split(“,”)
CSV.open(“杂货店列表3.CSV”,“w”)do | CSV|
csv_杂货店_列表。每个_带有_索引do |项,索引|

你是说我很困惑。第一个示例看起来像CSV,而第二个看起来像文本。您是否正在尝试读取CSV,然后将其转换为文本?我正在尝试打印为CSV文本,上面写着“项目1——啤酒”。我知道这不是使用CSV的正常方式,但这是被要求的。安东尼,是的!非常感谢。