Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Guardar Datos en C++

Estas en el tema de Guardar Datos en C++ en el foro de C/C++ en Foros del Web. Hola a todos!, tengo un problemilla. Estoy haciendo una aplicación que envía SMSs en C++. En la aplicación tendrás que introducir tu nombre y contraseña ...
  #1 (permalink)  
Antiguo 31/03/2006, 08:46
 
Fecha de Ingreso: febrero-2005
Mensajes: 105
Antigüedad: 19 años, 2 meses
Puntos: 1
Pregunta Guardar Datos en C++

Hola a todos!, tengo un problemilla. Estoy haciendo una aplicación que envía SMSs en C++. En la aplicación tendrás que introducir tu nombre y contraseña para que se carguen los contactos a los que puedes enviar un mensaje SMS.

Ahora que ya os he informado más o menos de como funciona la aplicación mi pregunta es la siguiente: ¿Como puedo almacenar los datos y como puedo acceder a ellos en C++?. Supongo que el tema estará en introducir la infromación en un fichero de texto o algo así, no??

¿¿Alguien puede guiarme, please??
  #2 (permalink)  
Antiguo 31/03/2006, 09:54
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Puedes usar la librería estándar de C (libc) o la librería estándar de C++ (std).

Tienes bastantes maneras de acceder a ficheros y tratar sus datos. Para empezar, infórmate sobre las funciones de la libc como: fopen(), fprintf(), fscanf(), fclose(), fwrite(), fread()... etc.
  #3 (permalink)  
Antiguo 31/03/2006, 10:45
 
Fecha de Ingreso: febrero-2005
Mensajes: 105
Antigüedad: 19 años, 2 meses
Puntos: 1
Grácias MaxExtreme, pero preferiría hacerlo en C++ porque tengo que utilizar también algunas clases creadas por mí y también me es más fácil emplear estructuras dinámicas (listas). lo que quería hacer es: para cada usuario almacenar información sobre sus contactos (nombre, e-mail, teléfono,...). esta información puede ser modificada, por eso quería almacenar

He pensado en utilizar una lista dinámica en la que cada nodo tendrá los siguientes campos:
- Login del usuario.
- Password.
- Puntero al primer nodo de la lista de contactos para ese usuario (cada
nodo de los contactos tendrá también información).

Estos datos se cargarán desde y hacia memoria para no perderse. Eso es lo que quiero averiguar. Creo que en C++ puedo utilizar la librería (fstream), pero no se como... ¿algún pequeño y fácil ejemplo? (he mirado en webs, pero al compilar el código obtengo errors de compilación a patadas...)
  #4 (permalink)  
Antiguo 01/04/2006, 04:25
 
Fecha de Ingreso: abril-2005
Mensajes: 3.083
Antigüedad: 19 años
Puntos: 17
Tienes bastantes ejemplos del uso de las librerías de C++ así como tutoriales en Internet. Por otro lado, no deberían darte "errores de compilación a patadas", puesto que es algo estándar. Lo único que se me ocurre es que no incluyeses el header adecuado (como #include <loquesea>).

Si lo quieres hacer en C++, ¿por qué usas listas propias? Deberías usar std::vector.
  #5 (permalink)  
Antiguo 16/01/2009, 13:02
 
Fecha de Ingreso: junio-2008
Mensajes: 4
Antigüedad: 15 años, 10 meses
Puntos: 0
De acuerdo Respuesta: Guardar Datos en C++

Cita:
Iniciado por gazpachoymochil Ver Mensaje
Grácias MaxExtreme, pero preferiría hacerlo en C++ porque tengo que utilizar también algunas clases creadas por mí y también me es más fácil emplear estructuras dinámicas (listas). lo que quería hacer es: para cada usuario almacenar información sobre sus contactos (nombre, e-mail, teléfono,...). esta información puede ser modificada, por eso quería almacenar

He pensado en utilizar una lista dinámica en la que cada nodo tendrá los siguientes campos:
- Login del usuario.
- Password.
- Puntero al primer nodo de la lista de contactos para ese usuario (cada
nodo de los contactos tendrá también información).

Estos datos se cargarán desde y hacia memoria para no perderse. Eso es lo que quiero averiguar. Creo que en C++ puedo utilizar la librería (fstream), pero no se como... ¿algún pequeño y fácil ejemplo? (he mirado en webs, pero al compilar el código obtengo errors de compilación a patadas...)












::::::::::::::::::::::::::::


Qué onda man pues ya entendí por ejemplo
yo en c++
poner :


name: José Luis
mail: [email protected]
Contraseña: Hola1000


Y todos estos datros guardarlos en un txt o en un doc para desupes poder checarlos.
Espero hayas ya resuelto la duda para que me eches la mano porque no sé como hacerlo y necesito hacer uno
en el que metan sus evaluaciones y al final guardar un txt para imprimirlo
grax bye
  #6 (permalink)  
Antiguo 17/01/2009, 05:35
Avatar de calathea  
Fecha de Ingreso: octubre-2008
Ubicación: Valladolid
Mensajes: 122
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Guardar Datos en C++

Necesitas guardarlo en un archivo. Si elijes un *.txt luego lo puedes abrir con el blok de notas...y si utilizas un binario (*.dat) lo abres solo desde el programa o desde un editor hexadecimal.

Te pongo un ejemplo:

Código:
#include <iostream>
#include <fstream>  //Librería de manejo de archivos en c++
using namespace std;

#define ARCHIVODETEXTO "<aqui la direccion del archivo>.txt" //no hace falta que esté creado ya, el programa lo creará

#define ARCHIVOBINARIO "<aqui la direccion del archivo>.dat" //idem anterior

//Siendo cContacto la clase en la q estan los atributos de cada contacto

void cContacto::generarAgenda(void)
{

/*declaramos el archivo (archivo es el nombre con el q nos referiremos al archivo, como el ptr en FILE *ptr;)*/
fstream archivo; //fstream sirve para lectura y escritura de archivos
//ifstream sería para lectura y ofstream para escritura

char separa[] = " ---------------------------------------------------------------------------- \n";


//si manejas archivo de texto utiliza esto:

archivo.open(ARCHIVODETEXTO);

if(archivo == NULL)
    {
		cout << "Error al abrir archivo " << ARCHIVODETEXTO << endl;
		exit(0);
    }

archivo << separa << endl; 

sprintf(linea, <aqui los datos que quieras meter en el archivo de texto, q estarán inicializados de antes>);
	
archivo << linea << endl; 
archivo << separa << endl;

/* archivo << linea << endl; escribe en el archivo lo que haya almacenado en "linea"...idem para el de "separa"*/

archivo.close();

//Si utilizas un binario:

archivo.open(ARCHIVOBINARIO, ios::out | ios::binary);  //con eso ya indicamos q es binario para escritura

archivo.write(<los parametros que tengas q poner para escribir en el archivo, igual que se haria en C con fwrite, pero sin los 2 ultimos argumentos>);

archivo.close();

}
Espero no haberme equivocado en el código y espero también que te sirva aunq solo sea para hacerte una idea.
  #7 (permalink)  
Antiguo 17/01/2009, 05:37
Avatar de calathea  
Fecha de Ingreso: octubre-2008
Ubicación: Valladolid
Mensajes: 122
Antigüedad: 15 años, 6 meses
Puntos: 3
Respuesta: Guardar Datos en C++

no me di cuenta de indicar que, evidentemente, se use o el metodo de archivo en binario, o el método de archivo de texto...eso o si se quieren usar ambos, declarar otro archivo con un nombre diferente!
ahi no he incluido nada de listas enlazadas...x cierto...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 23:34.