• Publicidad

Comparar nombre del archivo y cabeceras

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Comparar nombre del archivo y cabeceras

Notapor Redpunkpower » 2012-05-09 08:55 @413

¿Se puede leer el nombre de un archivo y compararlo con las cabeceras escritas en él?
Redpunkpower
Perlero nuevo
Perlero nuevo
 
Mensajes: 35
Registrado: 2012-05-08 09:37 @442

Publicidad

Re: Comparar nombre del archivo y cabeceras

Notapor explorer » 2012-05-09 10:06 @463

Depende...

Para leer el nombre de un archivo necesitamos permisos de lectura en el directorio en donde se encuentra.

Y para leer las cabeceras que hay dentro de él, necesitamos permisos de lectura del propio archivo. Y conocer el formato en que está codificado el archivo, naturalmente.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Comparar nombre del archivo y cabeceras

Notapor Redpunkpower » 2012-05-09 10:31 @480

Te explico, tengo unos archivos XML y tengo que comprobar que sus cabeceras coinciden con el nombre. La idea que tengo es poner un <STDIN> para que yo escriba, por ejemplo, 1394 y que haga un análisis a las cabeceras y que me conteste si coincide pero no sé cómo coger el nombre del archivo para que me lo compare.
Redpunkpower
Perlero nuevo
Perlero nuevo
 
Mensajes: 35
Registrado: 2012-05-08 09:37 @442

Re: Comparar nombre del archivo y cabeceras

Notapor explorer » 2012-05-09 10:45 @489

Pero si lo has dicho...

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. print "Ingrese el nombre del archivo a analizar: ";
  2. my $archivo = <STDIN>;
  3. chomp $archivo;
  4. open my $FH, '<', $archivo  or  die "ERROR: No puedo abrir $archivo: $!\n";
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Te recomiendo que leas más código Perl. Por estos foros hay docenas de ejemplos de lo que quieres hacer...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Comparar nombre del archivo y cabeceras

Notapor Redpunkpower » 2012-05-23 06:12 @300

Pero yo lo que quiero es coger una subcadena del nombre que yo he escrito:archivo_xml_01122000.xml

Con una parte del documento xml:
Sintáxis: [ Descargar ] [ Ocultar ]
Using xml Syntax Highlighting
  1. <nombre>archivo</nombre>
  2. <extenseión>xml</extensión>
  3. <fecha>01122000</fecha>
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Como cada campo está separado por "_" había pensado en poner que el campo 1 me lo compare con el nombre el campo 2 con la extensión y el campo 3 con la fecha. Pero ¿cómo hago para separarlos campos?

En Unix se haría con el grep, ¿pero en Windows?
Redpunkpower
Perlero nuevo
Perlero nuevo
 
Mensajes: 35
Registrado: 2012-05-08 09:37 @442

Re: Comparar nombre del archivo y cabeceras

Notapor explorer » 2012-05-23 07:09 @339

Redpunkpower escribiste:Como cada campo está separado por "_" había pensado en poner que el campo 1 me lo compare con el nombre el campo 2 con la extensión y el campo 3 con la fecha. Pero ¿cómo hago para separarlos campos?
¡Con split()!

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
my $archivo = 'archivo_xml_01122000.xml';
my($nombre, $extension, $fecha) = split(/_/, $archivo);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Comparar nombre del archivo y cabeceras

Notapor Redpunkpower » 2012-05-23 07:10 @340

¡ja,ja,ja! Ya lo había encontrado, pero gracias.
Redpunkpower
Perlero nuevo
Perlero nuevo
 
Mensajes: 35
Registrado: 2012-05-08 09:37 @442

Re: Comparar nombre del archivo y cabeceras

Notapor Redpunkpower » 2012-05-24 06:47 @324

Una vez dividido el archivo al final hay un 1_2_3.*.xml
Podría poner para que diferencie los campos de "_" y de "."
si no
podría borrar el "*"
Redpunkpower
Perlero nuevo
Perlero nuevo
 
Mensajes: 35
Registrado: 2012-05-08 09:37 @442


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 15 invitados