У меня есть простой сценарий, который делает некоторый поиск и замену. Это - в основном это:
File.open("us_cities.yml", "r+") do |file|
while line = file.gets
"do find a replace"
end
"Here I want to write to a new file"
end
Поскольку Вы видите, что я хочу записать новый файл с выводом. Как я могу сделать это?
Вывод в новый файл может быть выполнен следующим образом (не забудьте второй параметр) :
output = File.open( "outputfile.yml","w" )
output << "This is going to the output file"
output.close
Итак, в вашем примере вы можете сделать это:
File.open("us_cities.yml", "r+") do |file|
while line = file.gets
"do find a replace"
end
output = File.open( "outputfile.yml", "w" )
output << "Here I am writing to a new file"
output.close
end
Если вы хотите добавить в файл, убедитесь, что вы поместили открытие выходного файла вне цикла.
Сначала вам нужно создать новый файл, например newfile.txt
Затем изменить сценарий на
File.open("us_cities.yml", "r+") do |file|
new_file = File.new("newfile.txt", "r+")
while line = file.gets
new_file.puts "do find a replace"
end
end
. Это создаст новый файл с выходными данными
{ {1}}