Saltar al contenido

Cómo leer líneas de un archivo en Ruby

Hola usuario de nuestra web, tenemos la solución a lo que necesitas, has scroll y la verás aquí.

Solución:

Ruby tiene un método para esto:

File.readlines('foo').each do |line|

http://ruby-doc.org/core-1.9.3/IO.html#method-c-readlines

File.foreach(filename).with_index do |line, line_num|
   puts "#line_num: #line"
end

Esto ejecutará el bloque dado para cada línea en el archivo sin absorber todo el archivo en la memoria. Véase: IO::foreach.

Creo que mi respuesta cubre sus nuevas preocupaciones sobre el manejo de cualquier tipo de final de línea, ya que ambos "rn" y "r" se convierten al estándar Linux "n" antes de analizar las líneas.

para apoyar el "r" carácter EOL junto con el regular "n"y "rn" desde Windows, esto es lo que haría:

line_num=0
text=File.open('xxx.txt').read
text.gsub!(/rn?/, "n")
text.each_line do |line|
  print "#line_num += 1 #line"
end

Por supuesto, esto podría ser una mala idea en archivos muy grandes, ya que significa cargar todo el archivo en la memoria.

Aquí tienes las reseñas y puntuaciones

Si crees que ha sido de ayuda nuestro post, nos gustaría que lo compartas con más desarrolladores y nos ayudes a extender este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *