C/Visual C - copiar archivos en c ó c++

 
Vista:

copiar archivos en c ó c++

Publicado por Manu (1 intervención) el 21/09/2006 19:16:04
Hola buenas, he estado buscando por internet y no he encontrado nada, es un programa para c ó c++

explico:

Tengo una plantilla que es un documento word, es decir, .doc y queria hacer un programa para hacer copias de esa plantilla que se le pueda meter una variable char y una variable int
de modo que al ejecutar el programa se meta la variable char con el intoducir, por ejemplo juan
y tambien se le meta luego la variable entera
asi se podria hacer con un "for" el numero de plantillas con el nombre que quieras

te pongo un ejemplo por si no he sido muy claro

empieza el programa y tenemos que introducir el nombre:

Juan

introducimos el nº de copias

5

y copiaria la platilla.doc a juan1.doc, juan2.doc, juan3.doc.....

Lo he estado intentando con el bat pero como desistale la maquina virtual y no tengo las imagenes de los disquetes, no se me detiene y no me funciona.

Un saludo y gracias
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

RE:copiar archivos en c ó c++

Publicado por Eduardo Negrete (76 intervenciones) el 22/09/2006 04:52:40
Aqui Te dejo Un Codigo Para Ver Si Es Algo Parecido A Lo Que Quieres, Nada mas Lo Adaptas Para Tu Aplicacion

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>

char *NameFile( char Nombre[], int nArchivo );

int main(void)
{
FILE *fp;
char FileName[] = "Negrete", *NombreA;
int FilesNumber = 10;

for ( int i = 1; i <= FilesNumber; i++ )
{
NombreA = NameFile( FileName, i );
fp = fopen( NombreA, "w");
printf("Se Creo El Archivo %s\n", NombreA );
getche();
free( NombreA );
fclose( fp );
}

return 0;
}

/******************************************/
/***** Convierte Un Numero *****/
/***** A Un Nombre De Archivo *****/
/******************************************/
char *NameFile( char Nombre[], int nArchivo )
{

int Count, Residuos, Longitud, Temp, indice;
char Numeros[] = "0123456789", caracter = '\0';
char Extension[] = ".doc";
char *NombreArchivo;
char *Conversion;

// Calcula Cuantos Bytes Requiere El Numero A Convertir
Count = 0;
Temp = nArchivo;
do
{
Residuos = Temp % 10;
Temp /= 10;
Count++;
} while( Temp != 0 );

// Asigna Memoria A La Variable Conversion
Conversion = ( char * ) calloc( Count + 1, sizeof( char ) );
if ( Conversion == NULL )
{
printf("Error Al Intentar Asignar Memoria");
getche();
exit( 1 );
}

// Convierte El Numero Y Lo Guarda En La Variable Conversion
indice = Count - 1;
Temp = nArchivo;
do
{
Residuos = Temp % 10;
Conversion[indice] = Numeros[Residuos];
Temp /= 10;
indice--;
} while( Temp != 0 );
Conversion[Count] = caracter;

// Calcula El Tamaño Que Tendra El Nombre Del Archivo
// Con Todo Y Extension, Y Asigna Memoria
Longitud = strlen( Conversion ) + strlen( Nombre ) + 5;
NombreArchivo = ( char * ) calloc( Longitud, sizeof( char ) );
if ( NombreArchivo == NULL )
{
printf("Error Al Intentar Asignar Memoria");
getche();
exit( 1 );
}

strcpy( NombreArchivo, Nombre );
strcat( NombreArchivo, Conversion );
strcat( NombreArchivo, Extension );

free( Conversion );

return NombreArchivo;
}

Espero Te Sirva!!!
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