Perl - generacion de ficheros

 
Vista:

generacion de ficheros

Publicado por Luiso (1 intervención) el 28/07/2004 16:37:18
Hola a todos! Mi problema es el siguiente: tengo que generar 10.000 ficheros de texto, guardarlos bajo un nombre de la forma XXXX.e164.arpa (donde X son numeros de 0 a 9) y editarlos para escribir en ellos unos pocos caracteres. Alguien podria sugerirme un lenguaje de programacion, o alguna forma de hacer esto? Bajo lenguaje C esto es imposible, o por lo menos con mis conocimientos (no se pueden generar ficheros con nombre dinamico). Si alguien me responiera me salvaria la vida. Muchas gracias a todos!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:generacion de ficheros

Publicado por Martin Moya (20 intervenciones) el 06/08/2004 17:06:59
Hola por alla.

La solucion a tu problema es relativamente sencilla, te anexo un ejemplo

#!/usr/bin/perl -w

use strict;

my ($var); #Esta variable contendra numeros, desde el 0000 hasta el 9999
# Puede decirse que es la primera parte del nombre del archivo/fichero o lo que sea
my ($mid) = "e164.arpa"; # Esta es la segunda parte del nombre del archivo/fichero o lo que sea

my ($i); # Este es un contador para generar los nombres de ficheros/archivos o lo que sea

#
# Ahora viene la parte interesante
#

# Quiero suponer que vas a entrar en un loop para generar los nombres, asi que haya vamos

#
# Este loop es el que sera nuestro contador
#
for( $i = 0; $i < 10000; $i++) {

#
# Aqui generamos el consecutivo del archivo, ajustado con ceros a la izquierda
# los numeros que obtendremos serian 0000, 0001, 0002, 0003, 0004, Quedo Claro ????
#
$var = '0' x ( 4 - length($i) ) . $i;

#
# Ahora vamos a generar el archivo/fichero o como quieras llamarle
#

open S, ">$var.$mid" or die "No es posible abrir el fichero \"$var.$mid\" para escritura.\n";

#
# Ya esta creado el fichero, si quieres insertarle algo de informacion
# Tendria que ser en este momento
#
# print S "la linea de salida al fichero\n";

#
# Cerramos el fichero que acabamos de crear
#
close S;

#
# Ya terminamos la creacion de nuestros ficheros/archivos o lo que sea
# regresamos al loop principal
}

#
# Voila !!!! ya tenemos generados 10,000 ficheros
#

Espero que te sea de utilidad, por favor dejamelo saber


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar