Trabajar con Ficheros en Ruby

Se utiliza la clase File.

El enfoque preferido en la mayoria de los casos es:

File.open("nombreDelFichero.txt", [opcion]) {|fichero| fichero.write("Texto a escribir en el fichero") }

Por ejemplo:

File.open("fichero.txt", 'a') {|file| file.write("Texto a escribir en el fichero")}

 

Las opciones son:

  • r –> Solo lectura. El fichero debe existir.
  • w –> Crear un fichero vacío para escribir.
  • a –> Agrega al fichero. El fichero es creado si éste no existe.

 

  • r+ –>Abre un archivo tanto para leer como para escribir. El archivo debe existir.
  • w+ –> Crea un fichero vacío tanto para leer como para escribir.
  • a+ –> Abre un fichero tanto para leer como para agregar. El fichero es creado si este no existe.

 

Cuando se pasa un bloque a File.open, el objeto File se cerrará automáticamente cuando finalice el bloque.

 

** Si no pasa un bloque a File.open, debe asegurarse de que el archivo se cierre correctamente y el contenido se haya escrito en el archivo.

begin
  file = File.open("/tmp/some_file", "w")
  file.write("your text") 
rescue IOError => e
  #some error occur, dir not writable etc.
ensure
  file.close unless file.nil?
end