Я получил отличный ответ от вас, ребята, как я могу сохранить текст методов в txt-файл, но теперь у меня другая проблема. Дело в том, что программа генерирует случайный заголовок и печатает его в командной строке, но сохраняет полностью произвольный заголовок в файле. Например, если я запустил программу, он будет генерировать заголовок «Big Thing», но в txt-файле он сохранит «Маленькую игру». Есть ли способ заставить программу сохранить тот же заголовок, что и в CP? Код выглядит примерно так:Как я могу сделать ruby сохранить тот же случайный сгенерированный заголовок в txt?
class Generator
def title_adj
title_adj = [
"Big",
"Small"]
item_title_adj = title_adj[rand(title_adj.length)]
end
def title_noun
title_noun = [
"Thing",
"Game"]
item_title_noun = title_noun[rand(title_noun.length)]
end
def title
title_adj + title_noun
end
def initialize(io)
@io = io
end
def all
@io.puts "Your story is called: " + title
end
end
fict_gen = Fiction_Generator.new(STDOUT)
def prompt
print "> "
end
puts "Do you want to generate a new title or read the existing one?"
puts "1 = Generate, 2 = Read existing"
prompt; r = gets.chomp
if r == "1"
fict_gen.all
File.open("Story.txt", "a+") do |file|
fict_gen = Fiction_Generator.new(file)
fict_gen.all
end
elsif r == "2"
File.open("Story.txt").each_line{ |s|
puts s
}
end
Вау, нужна помощь по рефакторингу на шестом проходе! STAT! –