Título: Ayuda con "read" y "seek" en perl Publicado por: jankoitt en 4 Abril 2011, 23:06 pm Saludos, estoy haciendo una aplicacion en la cual estoy manejando archivos, necesito sacar unos datos desde una posicion en especifica hacia atras. Para ello estoy usando seek y read. Segun estuve leyendo:
seek me coloca el puntero en una posicion en especifico y me permite moverme desde el inicio, desde una posicion o desde el final con los parametros (0,1,2) para leer con read. Pero a pesar de esto, cuando uso el "read" me lee desde el inicio :S Lo que tengo es lo siguiente seek(l,-3955,1); #me posiciono en la 3955 para leer hacia atras read(l,$var,50); #almaceno en $var 50 caracteres desde la posicion 3905-3955 Pero aun asi cuando hago print $var; me presenta los primeros 50 caracteres desde la posicion 0 hasta la 49 del archivo. Alguna idea? Gracias! Título: Re: Ayuda con "read" y "seek" en perl Publicado por: leogtz en 4 Abril 2011, 23:19 pm Ya probaste con:
seek(l,3955,0); Según he leído, eso sitúa el puntero del archivo en el byte 3955. Título: Re: Ayuda con "read" y "seek" en perl Publicado por: jankoitt en 7 Abril 2011, 23:04 pm me funciona ahora si quito el "menos" en el 3955, lo que hice fue restar la cantidad de caracteres que deseaba leer a la posicion y asi me resulto (medio arcaico) pero para el fin resuelve.
Gracias! |