¿Cómo puedo leer un archivo, posiblemente usando un bucle, en Ruby?¿Cómo puedo leer un archivo con Ruby?
Proporcione un código de muestra si es posible.
¿Cómo puedo leer un archivo, posiblemente usando un bucle, en Ruby?¿Cómo puedo leer un archivo con Ruby?
Proporcione un código de muestra si es posible.
# Created by Michael Williams 12/19/2005
# Licensed under Create Commons Attribution License
Ejemplo 1 - Leer archivo y cierre:
counter = 1
file = File.new("readfile.rb", "r")
while (line = file.gets)
puts "#{counter}: #{line}"
counter = counter + 1
end
file.close
Ejemplo 2 - Pase de archivos para bloquear:
File.open("readfile.rb", "r") do |infile|
while (line = infile.gets)
puts "#{counter}: #{line}"
counter = counter + 1
end
end
Ejemplo 3 - Leer archivo con el manejo de excepciones:
counter = 1
begin
file = File.new("readfile.rb", "r")
while (line = file.gets)
puts "#{counter}: #{line}"
counter = counter + 1
end
file.close
rescue => err
puts "Exception: #{err}"
err
end
que se parece mucho al código Java. –
Eso se parece demasiado al código de Java. Ruby es un lenguaje de script, deberías poder leer un archivo con una línea simple e intuitiva. (a menos que necesites algo más complicado). Aunque el OP sí solicitó un bucle for, la mayoría de los desarrolladores que solo quieren leer un archivo deberían mirar el informe de @ Dogbert. –
Estos no son buenos ejemplos de cómo leer archivos en Ruby. Recomiendo leer la documentación de IO y archivo y aprovechar los métodos bien probados en su lugar. –
contents = File.read('filename')
El enlace real para el método 'read' es: http://www.ruby-doc.org/core-1.9.3/IO.html#method--read –
Esta debería ser la respuesta aceptada. –
Tuve ** problemas con este método en Windows ** leyendo algunos archivos binarios con Ruby 1.8.7 Parece que lee el archivo en modo texto, por lo que a veces recibí solo parte del archivo como resultado. Así que decidí usar 'File.open (path_to_file, 'rb')' como más seguro en Windows para leer archivos binarios. – Inversion
yo diría que también lo ha convertido en un sustituto de la lectura de los documentos, sin tener en cuenta si eso es lo que se entiende por (Busqué "ruby leer archivo "y obtuve mi respuesta aquí). – Wes
es lo primero que aparece cuando busco en google :) – Flov
La documentación a menudo es muy tediosa de leer. No necesito una referencia completa, solo algo para comenzar. – Maarten