[caption id="attachment_784" align="aligncenter" width="679"] Guardar vector de numeros en un archivo en C[/caption]
En este caso se guardara informacion de vectores del tipo Int
[cpp]
</span>
/*
* FicheroCompleto.c
*
* Copyright 2009 Julio César Brizuela < brizuela@linux-qxlk >
*
*/
#include < stdio.h >
void menu();
void CrearFichero(FILE *Fichero);
void InsertarDatos(FILE *Fichero);
void VerDatos(FILE *Fichero);
struct sRegistro {
char Nombre[25];
int Edad;
float Sueldo;
}registro;
int main(int argc, char** argv)
{
int opcion;
int exit = 0;
FILE *fichero;
while (!exit)
{
menu();
printf("\nOpcion: ");
scanf("%d", &opcion;);
switch(opcion)
{
case 1:
CrearFichero(fichero);
break;
case 2:
InsertarDatos(fichero);
break;
case 3:
VerDatos(fichero);
break;
case 4:
exit = 1;
break;
default:
printf("\nopcion no valida");
}
}
return 0;
}
void menu()
{
printf("\nMenu:");
printf("\n\t1. Crear fichero");
printf("\n\t2. Insertar datos");
printf("\n\t3. Ver datos");
printf("\n\t4. Salir");
}
void CrearFichero(FILE *Fichero)
{
Fichero = fopen("fichero", "r");
if(!Fichero)
{
Fichero = fopen("fichero", "w");
printf("\nArchivo creado!");
}
else
{
printf("\nEl fichero ya existe!");
}
fclose (Fichero);
return;
}
void InsertarDatos(FILE *Fichero)
{
Fichero = fopen("fichero", "a+");
if(Fichero == NULL)
{
printf("\nFichero no existe! \nPor favor creelo");
return;
}
//Vectores para guardar la informacion
int lim=1;
char nomb[lim][50];
int nume[lim];
char domi[lim][50];
int numI[lim];
for(int i=0;i< lim;i++)
{
printf("\nDigita el nombre: ");
//scanf("%s",&nomb;[i][50]);
printf("\nDigita Numero: ");
scanf("%d",&nume;[i]);
printf("\nDigita Domicilio: ");
//scanf("%s",&domi;[i][50]);
printf("\nDigita ID: ");
scanf("%d",&numI;[i]);
}
//fwrite(nomb, sizeof(char), lim, Fichero);
fwrite(nume, sizeof(int), lim, Fichero);
//fwrite(domi, sizeof(char), lim, Fichero);
fwrite(numI, sizeof(int), lim, Fichero);
fclose(Fichero);
return;
}
void VerDatos(FILE *Fichero)
{
int numero = 1;
Fichero = fopen("fichero", "r");
if(Fichero == NULL)
{
printf("\nFichero no existe! \nPor favor creelo");
return;
}
//Vectores para guardar la informacion
int lim=1;
char nomb[lim][50];
int nume[lim];
char domi[lim][50];
int numI[lim];
//fread(nomb, sizeof(char), lim, Fichero);
fread(nume, sizeof(int), lim, Fichero);
//fread(domi, sizeof(char), lim, Fichero);
fread(numI, sizeof(int), lim, Fichero);
printf("\tNombre \tNumero \tDomicilio \tId");
for(int i=0;i< lim;i++)
{
//printf("\n%d \t%s \t%d \t%s \t%d",i, nomb[i][50], nume[i], domi[i][50], numI[i]);
printf("\n%d \t%d \t%d",i, nume[i], numI[i]);
}
fclose(Fichero);
return;
}
[/cpp]
0 comentarios :
Publicar un comentario