Weblogs Código

RecorteX

» lectura
73 usuarios y 244 recortes de código
Usuario

Contraseña
Crear cuenta
Estás viendo los recortes de la etiqueta lectura

RSS
Recortes: 1

Etiquetas relacionadas:
ficheros
ruby

Manejo ficheros en ruby

Breves métodos para leer ficheros de texto.

Leemos y obtenemos cada linea del fichero en una posición de un array
 
    f = File.new("fichero.txt")
    array_lineas_de_fichero = f.readlines
    f.close
    #quitamos los saltos de linea en cada elemento del array, si nos interesa
    array_lineas_de_fichero.collect! {|x| x.strip}
 
Tratamos todos los ficheros de un directorio de una extensión determinada
 
    Dir.chdir(@dir)     #@dir:: mi directorio de interés    
    myfiles = File.join("**", "*.EXTENSION")
    # para cada fichero de extensión EXTENSION en todos los subdirectorios
    # si no nos interesasen los subdirectorios, eliminariamos "**"
    Dir.glob(myfiles) { |file|
      process_file file
    }
 
Y el método anterior process_file podría ser:
 
def process_file (aFile)
    
    File.open(aFile){|ioF|
      counter=0  # ¿para contar las lineas?
      while (line = ioF.gets)
        # con esto leemos también cada linea y la podemos tratar...
        process_line line
        counter = counter + 1
      end
      puts "-" + aFile + " --> " + counter.to_s + " lineas"
    }    
    
  end
 
Proyecto: Juanjo Navarro, 2006 - Diseño: Albin