| Ver tema anterior :: Ver siguiente tema | | Autor | Mensaje |
|---|
alcon2787
Registrado: 30 Oct 2011 Mensajes: 4
| Publicado: 06/11/2011 9:21 am | | | Título: ¿Ayuda con un programa de archivos de acceso aleatorio en c+ |
| include<iostream> #include<stdlib.h> #include<conio.h> #include<time.h> #include <math.h> #include<stdio.h> #include<windows.h> #include<string.h>
void creararchivo(void); void guardar(int cod,int arc);
int i=0; FILE *casino1; //Casino de Monte-Carlo FILE *casino2; //Casino Four Queens FILE *casino3; //Casino Conrad FILE *casino4; //Casino Metropol
using namespace std;
struct datosjug { int codigo; char Nombre[15]; int saldo; }datosjugador;
int main() { creararchivo(); guardar(1,1); return 0; }
void creararchivo(void) { i=0; struct datosjug Reg = {0," ",0}; //apertura casino1=fopen("CasinoMonteCarlo.txt","w"… casino2=fopen("CasinoFourQuens.txt","w")… casino3=fopen("CasinoConrad.txt","w"); casino4=fopen("CasinoMetropol.txt","w"); //validacion if((casino1==NULL)||(casino2==NULL)||(ca… { cout<<"Error!"<<endl; cout<<"Uno de los archivos no pudo crearce"<<endl; system("pause"); menu(); } else { for(i=0;i<=100;i++) { fwrite(&Reg,sizeof(struct datosjug),1,casino1); fwrite(&Reg,sizeof(struct datosjug),1,casino2); fwrite(&Reg,sizeof(struct datosjug),1,casino3); fwrite(&Reg,sizeof(struct datosjug),1,casino4); } fclose(casino1); fclose(casino2); fclose(casino3); fclose(casino4); } }
void guardar(int cod,int arc) { long int direccion; char nomb[15]; cin>>nomb; i=0; FILE *parchivo;//puntero archivo struct datosjug Reg = {0," ",0}; //apertura switch(arc) { case 1: { parchivo=fopen("CasinoMonteCarlo.txt","a… break; } case 2: { parchivo=fopen("CasinoFourQuens.txt","a+… break; } case 3: { parchivo=fopen("CasinoConrad.txt","a+"); break; } case 4: { parchivo=fopen("CasinoMetropol.txt","a+"… break; } }
if(parchivo==NULL) { cout<<"Error!"<<endl; cout<<"No se pudo abrir el archivo especificado"<<endl; system("pause"); goto salir; } else { datosjugador.codigo = cod; for(i=0;i<=strlen(nomb);i++) { datosjugador.Nombre[i]=nomb[i]; } datosjugador.saldo = 5000; direccion=cod*sizeof(struct datosjug); fseek(parchivo,direccion,SEEK_SET); fwrite(&Reg,sizeof(struct datosjug),1,parchivo); } salir: fclose(parchivo); }
Quisiera que se guarden los registros que por el momento lo hago manualmente la asignacion, pero el problema que al tratar de guardar el registro en el archivo el registro no se guarda. La funcion recibe un codigo y un numero clave para identificar que archivo se abrira eh intentado muchas cosas y no puedo Espero me puedan ayudar!! Bendiciones |
| | Volver arriba | |  | rir3760

Registrado: 01 Oct 2004 Mensajes: 6586 Ubicación: Mexico
| Publicado: 06/11/2011 9:54 am | | | Título: |
| Por lo que se alcanza a apreciar del programa esta mal en el sentido de ser un programa en C++ pero sin utilizar nada de este (solo la biblioteca estándar de C) y, para empezar, casi todos los nombres de los encabezados están mal.
Tu código fuente publicado, si lo revisas, esta incompleto. Edita tu mensaje para publicarlo completo y utiliza las etiquetas de código, es el botón "code" en la pagina de composición de mensajes.
Un saludo _________________ Memory never recaptures reality. Memory reconstructs. All reconstructions change the original, becoming external frames of reference that inevitably fall short. -- Mentat Handbook |
| | Volver arriba | |  | alcon2787
Registrado: 30 Oct 2011 Mensajes: 4
| Publicado: 06/11/2011 10:18 am | | | Título: |
| | rir3760 escribió: | Por lo que se alcanza a apreciar del programa esta mal en el sentido de ser un programa en C++ pero sin utilizar nada de este (solo la biblioteca estándar de C) y, para empezar, casi todos los nombres de los encabezados están mal.
Tu código fuente publicado, si lo revisas, esta incompleto. Edita tu mensaje para publicarlo completo y utiliza las etiquetas de código, es el botón "code" en la pagina de composición de mensajes.
Un saludo |
Buena observacion pero me gustaria ayuda o que me recomiendes algun enlaze para trabajar con archivos aleatorios en C o me guies, el programa esta incompleto pero lo que necesito es la funcion de guardar y crear registros en un archivo de acceso aleatorio, es un tipo de juego que nos pidieron y necesito guardar el codigo nombre y saldo de la persona por eso necesito una funcion que reciba esos valores!! Espero me puedas ayudar ya que soy Noob en esto. Bendiciones |
| | Volver arriba | |  | | rir3760

Registrado: 01 Oct 2004 Mensajes: 6586 Ubicación: Mexico
| Publicado: 06/11/2011 4:28 pm | | | Título: |
| Lo primero que debes decidir es el lenguaje de programacion a utilizar ya que, como te comente, el programa no utiliza casi nada de C++.
Cuando te comente que tu programa aparece incompleto es por lineas como estas:
| Código: | casino1=fopen("CasinoMonteCarlo.txt","w"… casino2=fopen("CasinoFourQuens.txt","w")… casino3=fopen("CasinoConrad.txt","w"); casino4=fopen("CasinoMetropol.txt","w"); |
Antes de ayudarte con el programa debes publicarlo completo.
Un saludo _________________ Memory never recaptures reality. Memory reconstructs. All reconstructions change the original, becoming external frames of reference that inevitably fall short. -- Mentat Handbook |
| | Volver arriba | |  | alcon2787
Registrado: 30 Oct 2011 Mensajes: 4
| Publicado: 07/11/2011 7:17 am | | | Título: Re: Archivos aleatorios c++ |
| | rir3760 escribió: | Lo primero que debes decidir es el lenguaje de programacion a utilizar ya que, como te comente, el programa no utiliza casi nada de C++.
Cuando te comente que tu programa aparece incompleto es por lineas como estas:
| Código: | casino1=fopen("CasinoMonteCarlo.txt","w"… casino2=fopen("CasinoFourQuens.txt","w")… casino3=fopen("CasinoConrad.txt","w"); casino4=fopen("CasinoMetropol.txt","w"); |
Antes de ayudarte con el programa debes publicarlo completo.
Un saludo |
Gracias nuevamente, eh encontrado el error pero me interesa aprender C++ pense que eran lo mismo porque no distingo la diferencia solo se que C++ hay POO! espero me puedas ayudar ya que quiero aprender c++
Bendiciones |
| | Volver arriba | |  | rir3760

Registrado: 01 Oct 2004 Mensajes: 6586 Ubicación: Mexico
| Publicado: 07/11/2011 7:22 am | | | Título: |
| Para aprender C++ nada mejor que un buen curso o libro, empieza revisando la seccion "Cursos" de este sitio.
Un saludo _________________ Memory never recaptures reality. Memory reconstructs. All reconstructions change the original, becoming external frames of reference that inevitably fall short. -- Mentat Handbook |
| | Volver arriba | |  | | |
| No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas
|
|
| |