Leer un fichero

Marcelo E. Magallón marcelo.magallon en gmail.com
Mar Ago 9 11:28:11 PDT 2005


On 8/9/05, Carlos A. Pitty L. <cpitty at bancouniversal.com> wrote:

> Necesito leer de un archivo que contiene cierta cantidad de líneas una línea
> en específico y luego esa línea descomponerla en datos más pequeños.  Ya he
> logrado hacer que el script me traiga la línea que deseo, la guardo en un
> arreglo pero no he logrado descomponerla.  Lo malo es que para descomponerla
> los datos no están separados por ningún carácter, por ejemplo, los tres
> primeros números significan algo, los dos siguientes otro dato, los cuatro
> siguientes otro dato y así lo mismo en cada línea. 

Si nos das un ejemplo de como se ve la línea es más simple ayudarte,
pero con la descripción que ofrecés, esto debería ser un comienzo:

#!/usr/bin/perl

use warnings;
use strict;

# para todas las líneas
while (<>)
{
    # buscar las que contengan la hilera 60371702
    next unless /60371702/;

    # y con esas hacer lo siguiente

    # 1. imprimirlas tal cual
    print;

    # 2. quitarles el caracter de "nueva línea"
    chomp;

    # 3. imprimir su longitud medida en caracteres

    print "Longitud: ", length($_), "\n";

    my @c = split //;

    print "Primeros tres: ", join('', @c[0 .. 2]), "\n";
}

escribís eso en un archivo, lo hacés ejecutable, y lo llamás con el
nombre del archivo con los datos como argumento:

$ ./trabaja REN

-- 
Marcelo


Más información sobre la lista de distribución Costarica-pm