Ver la versión completa : Desarrollo: Cómo grabar en un fichero de texto
JonGoten
19/11/2003, 20:59
Bueno, lo único que quiero hacer, y con esto doy por finalizada la aplicación que estoy haciendo, es grabar el estado de una variable (un entero, y cuando se pulse el start) en un fichero de texto (digamos prueba.txt), para luego, abrir dicho fichero y volver a cargar esa variable.
Lo que quiero hacer es: A la hora de guardar, si no existe dicho prueba.txt, se crea uno y se graba.
Alguien puede poner el código SDK para hacer esto? Se que es muy sencillo, pero no me sale :mad: ( Esque nunca me he llevado bien con los ficheros en c :( )
Gracias
mortimor
19/11/2003, 21:29
PAra guardar:
FILE *fichero;
int var; /*la variable entera*/
fichero=fopen("prueba.dat","w"); /*si no existe el fichero lo crea*/
fwrite(&var,sizeof(int),1,fichero);
fclose(fichero);
PAra leer:
FILE *fichero;
int var; /*la variable entera*/
fichero=fopen("prueba.dat","r");
fread(&var,sizeof(int),1,fichero);
fclose(fichero);
MAS O MENOS es esto no?? utiliza un wrapper de stdio para poder utilizar las funciones estandar de C. Como el wrapper de CHUI (aunque a mi las fucniones de lectura y escritura en ficheros me estan dando dolores de cabeza ya).
En caso de que sigas queriendo utilizar el sdk... mira las fucniones en el fichero gpstdio.h y ya que estoy:
PAra guardar:
F_HANDLE fichero;
int var; /*la variable entera*/
GpFatInit();/*solo una vez por ejecucion del programa*/
if (GpFileOpen("prueba.dat",OPEN_W,&fichero) == ERR_FILE_NOT_EXIST)
{
GpFileCreate("prueba.dat",ALWAYS_CREATE,&fichero);
GpFileOpen("prueba.dat",OPEN_W,&fichero);
}
GpFileRead(fichero,&var,sizeof(int),1,&cont);
GpFileClose(fichero);
GpFATUpdate("GP://");/*cuando se va a cerrar el programa o cuando se quiere asegurar uno de que los datos se guardan*/
PAra leer:
F_HANDLE fichero;
int var; /*la variable entera*/
int cont; /*el retorno de los datos leidos*/
GpFatInit(); /*solo una vez por ejecucion del programa*/
GpFileOpen("prueba.dat",OPEN_R,&fichero);
GpFileRead(fichero,&var,sizeof(int),1,&cont);
GpFileClose(fichero);
GpFATUpdate("GP://"); /*cuando se va a cerrar el programa o cuando se quiere asegurar uno de que los datos se guardan*/
mortimor
19/11/2003, 21:30
No aseguro que esto funcione. Ni siquiera lo he probado. Yo utilizo un wrapper.
Pero espero de todos modos que te sirva de ayuda.
Topochan
19/11/2003, 23:50
Sirve el c++ para programar en gp32? si es asi en definir un tipo fstream mucho mejor, sino los ejemplos de arriba te iran a las mil maravillas(que se pueda el c pus pus...)
mortimor
20/11/2003, 22:56
Pues creo que no se puede usar C++ todavia.
mortimor
20/11/2003, 23:11
Seguro!!!!!! Y yo complicando me la vida!!!!
Siempre que he intentado compilar en c++ me ha dado errores.
Miki-chan
20/11/2003, 23:41
Cuando decís que se puede usar C o C++... ¿os referís al código puro y duro de ambos sin necesidad de usar las librerías del SDK? ¿Cómo se hace eso?
Topochan
21/11/2003, 16:40
si soporta c++(almenos el gcc)
Topochan
22/11/2003, 13:59
Seguro!!!!!! Y yo complicando me la vida!!!!
Siempre que he intentado compilar en c++ me ha dado errores.
Pos si, en el compilador para linux no me da errores al compilar classes(y con ello herencia, layering, etc..) ni gestion de memoria por new ni delete... ahora el uso de ficheros me temo que sera a la usanza de C pq no esta iostream ni la fstream...
mortimor
22/11/2003, 14:34
Yo es que ahora no utilizo el linux, estoy programando todos los dias para windows y no tengo tiempo de andar saliendo y entrando en el sistema cada dos poir tres.
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions Inc. All rights reserved.