Pregunta

Estoy leyendo un archivo línea por línea en un programa simple y al imprimir las líneas a la pantalla de la última línea no se puede ver en la ventana ouput en IDE NetBeans 6.5.1 en Windows XP, pero cuando ejecutar el programa directamente desde la línea de comandos como "main.rb rubí" no es un problema (es decir, la última línea se puede ver) .I'm usando rubí 1.8.6.Here es el código completo:

File.open("songs.txt","r") do |file|
  file.each do |line|
    print line
   end
end
¿Fue útil?

Solución

Esto funciona mejor si se utiliza puts que se anexe un terminador de línea, si no hay ya uno al final de la línea, forzando un rubor búfer.

Otros consejos

Nunca he correr a través de esto antes de mí mismo, pero creo que ha de ser que su última línea no tiene un salto de línea de arrastre, por lo que la consola de Netbeans no está vaciando la línea. Trate de añadir $stdout.flush al final del programa y ver qué sucede.

Por cierto, puede simplificar el código ligeramente reescribiéndolo usando foreach :

File.foreach("songs.txt","r") do |file|
  print line
end
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top