Página 3 de 3

Re: Error: Not a GLOB reference

NotaPublicado: 2013-07-10 05:46 @282
por explorer
Hay un error sintáctico en la línea 16. Falta un ';' entre las sentencias.

Y hay un error lógico: estás usando la misma variable $FITX para dos usos distintos.

Re: Error: Not a GLOB reference

NotaPublicado: 2013-07-10 11:13 @509
por Eowyn
Esto no lo entiendo muy bien. Yo pensaba que en $FITX tengo el archivo y que al hacer
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. while (my $lerroADI = <$FITX>) {
  2.     chomp $lerroADI;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

lo que hago es leer la primera línea de ese archivo y guardarla en $lerroADI, ¿no es así?

Es que ahora que te leo, me da un poco la impresión de que con $FITX leo todo el archivo y cargo la tabla hash y que luego no me deja por tanto leer la primera línea porque ya la he pasado. ¿Qué debería hacer entonces? ¿Cerrar el archivo y volver a abrirlo en otra variable? :roll:

Re: Error: Not a GLOB reference

NotaPublicado: 2013-07-10 13:06 @587
por explorer
El error es que en la línea 28 estás intentando leer una línea del archivo asociado a $FITX, pero resulta que $FITX no es un gestor de archivo, sino un objeto XML::Path, tal como lo tienes puesto en la línea 16.

Entonces... da la impresión de que en la línea 28 quieres hacer referencia a la variable $FITX que definiste en la línea 5. El problema es que, para Perl, en la línea 28, la que tiene efecto es la creada en la línea 16.

Así que... el consejo es que le cambies de nombre a una de las dos variables. Por ejemplo, en las líneas 16 y 18, en lugar de usar $FITX, le puedes poner $FITXA.

Tampoco me gusta mucho que tengas el open() fuera de la subrutina donde lees las líneas. Es mejor tener el trío open, read y close en el mismo contexto (dentro de las mismas llaves).

Re: Error: Not a GLOB reference

NotaPublicado: 2013-07-11 03:10 @174
por Eowyn
Muchas gracias, lo voy a intentar. :roll: