From: Jenny Purcell Date: 2007-07-25T13:59:58+09:00 Subject: Newbie question, writing to a file I'm reading Learn To Program, which is based around Ruby code, and it has directions on how to write to a named file. It looks like following these directions, I want to do something like this, where "string" is the text I want to write to the file. filename = 'results.csv' File.open filename, 'w' do |f| f.write string Howver, what I can't sort out is how exactly I get the string to write to the file. Here's the code I use now: # Print out results to csv file line by line while i <= count do j = number.detect {|c| position[c - 1] == i + 1} j = j - 1 # Push each horse's name, owner, score, pre_points, dice rolls, and other info into a new csv file puts CSV.generate_line(["pp#{pole_new[j]}", horse_name[j], horse_info[j], owners_initials[j], best_result[j], race_style[j], best_time[j], pre_points[j], roll_1[j], roll_2[j], roll_3[j], roll_4[j], roll_5[j], score[j], "#{position[j]}(#{count + 1})"]) i = i + 1 end Then, what I do is run the program and use 'racing.rb > results.csv' to actually write to a results file. I'd like the next step to be that it writes to its own results file without me having to name it each time I run the program. How do I set up the CSV lines that I generate to be put in a string (or object) that I can then send to a file? Jenny