Проблема с Ruby и Netbeans - PullRequest
       22

Проблема с Ruby и Netbeans

0 голосов
/ 10 июня 2009

Я построчно читаю файл в простой программе, и когда я печатаю строки на экране, последнюю строку невозможно увидеть в окне вывода в 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 ]

2 голосов
/ 10 июня 2009

Это будет работать лучше, если вы используете puts, который добавит терминатор новой строки, если его еще нет в конце строки, вызывая очистку буфера.

2 голосов
/ 10 июня 2009

Я никогда не сталкивался с этим раньше себя, но я предполагаю, что ваша последняя строка не имеет конца строки, поэтому консоль Netbeans не сбрасывает строку. Попробуйте добавить $stdout.flush в конце программы и посмотрите, что произойдет.

Кстати, вы можете немного упростить этот код, переписав его, используя foreach:

File.foreach("songs.txt","r") do |file|
  print line
end
...