Проблема с Ruby и Netbeans
Я читаю файл построчно в простой программе, и когда я печатаю строки на экране, последнюю строку не видно в окне вывода в IDE Netbeans 6.5.1 в Windows XP, но когда я запускаю программу Непосредственно из командной строки, как "ruby main.rb", проблем нет (т.е. видно последнюю строку). Я использую Ruby 1.8.6. Вот весь код:
File.open("songs.txt","r") do |file|
file.each do |line|
print line
end
end
2 ответа
Это будет работать лучше, если вы используете puts
который добавит терминатор новой строки, если его еще нет в конце строки, вызывая очистку буфера.
Я никогда не сталкивался с этим раньше себя, но я думаю, что ваша последняя строка не имеет конца строки, поэтому консоль Netbeans не очищает линию. Попробуйте добавить $stdout.flush
в конце программы и посмотрим, что получится.
Кстати, вы можете немного упростить этот код, переписав его, используя foreach
:
File.foreach("songs.txt","r") do |file|
print line
end