• Miércoles 6 de Noviembre de 2024, 09:54

Autor Tema:  Crear varios ficheros de texto  (Leído 1414 veces)

enyell

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Crear varios ficheros de texto
« en: Viernes 5 de Septiembre de 2008, 15:09 »
0
Hola a todos!

Estoy haciendo una simulación de enrutamiento, quiero que cada router tenga su propia tabla de enrutamiento y que se escriba en un fichero de texto externo. No he sido capaz de crear varios ficheros (uno para cada router) del estilo: tablaEnrutamiento1.txt, tablaEnrutamiento2.txt, tablaEnrutamiento3.txt...coincidiendo con el router1, router2, router3..

He probado cogiendo el entero 1, 2... y cambiandolo con "itoa" a string para luego añadirselo a "tablaEnrutamiento" pero no lo he conseguido.

Alguna idea???

Muchas gracias

Rombus

  • Miembro MUY activo
  • ***
  • Mensajes: 105
  • Nacionalidad: ar
    • Ver Perfil
    • http://myspace.com/punkrecycle
Re: Crear varios ficheros de texto
« Respuesta #1 en: Viernes 5 de Septiembre de 2008, 15:46 »
0
hola!

lo que podrias hacer es tener unas variables asi:

Código: Text
  1.  
  2.     char nombre[LENGTH] ={"tablaEnrutamiento"};
  3.     int i =0;
  4.  
  5.  

donde le incrementas en uno a i cuando entras a una posible funcion creaFichero, o devuelveNombreFIchero, que podria hacer simplemente unos
Código: Text
  1.     
  2.     strcat(nombre,i);
  3.     strcat(nombre,".txt");
  4.  

asegurate que LENGTH sea un numero lo suficientemente grande como para almacenar el nombre mas el numero mas la extension.

no se si me exprese bien, a ver capaz asi:

Código: Text
  1.  
  2. char *devuelveNombre(int *i,char *nombre){
  3.    (*i)++;
  4.     strcat(nombre,i);
  5.     strcat(nombre,".txt");
  6.  
  7.     return nombre;    
  8. }
  9.  

empieza con un i++ suponiendo que i esta inicializada en 0 y suponiendo tambien que queres que el nombre empieze con 1.

lo que obtendrias con esto es una cadena que contiene: "tablaEnrutamiento1.txt" la primera vez, "tablaEnrutamiento2.txt" la segunda vez,
y asi susecivamente.


epero haberte podido ayudar ;)

enyell

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Crear varios ficheros de texto
« Respuesta #2 en: Domingo 7 de Septiembre de 2008, 12:44 »
0
Muchas gracias!!

Sí que funciona!  :D

Lo único que he tenido q añadir es :
char buffer='9';       
itoa( i, &buffer, 10 );      
strcat(nombre,&buffer);

para que convirtiera el int a char.

Salu2

Rombus

  • Miembro MUY activo
  • ***
  • Mensajes: 105
  • Nacionalidad: ar
    • Ver Perfil
    • http://myspace.com/punkrecycle
Re: Crear varios ficheros de texto
« Respuesta #3 en: Domingo 7 de Septiembre de 2008, 19:54 »
0
de nada ;)


sin ese itoa(); no andaba?

pq creo que no es nesesario, ya que en la inicializacion del buffer pones:  
Código: Text
  1. char buffer = '9'
  2.  
;  y no
Código: Text
  1. char buffer = 9;
  2.  
por lo que el valor entero del buffer es el codigo ascii del 9 y no el numero 9.

saludos ;)!

Rombus

  • Miembro MUY activo
  • ***
  • Mensajes: 105
  • Nacionalidad: ar
    • Ver Perfil
    • http://myspace.com/punkrecycle
Re: Crear varios ficheros de texto
« Respuesta #4 en: Domingo 7 de Septiembre de 2008, 19:56 »
0
pff te respondi cualquier cosa

jaja, eso me pasa por leer mientras miro la Tv