• Jueves 2 de Mayo de 2024, 06:26

Autor Tema:  Leer ficheros caracter a caracter [Clases]  (Leído 1872 veces)

VVV

  • Nuevo Miembro
  • *
  • Mensajes: 3
  • Nacionalidad: 00
    • Ver Perfil
Leer ficheros caracter a caracter [Clases]
« en: Sábado 26 de Mayo de 2012, 12:45 »
0
Seguramente sea una duda muy simple, pero ando muy perdido en cuanto al uso de clases.

Si yo queria leer un fichero caracter a caracter con una estrucutra, el código era bien sencillo.

Código: [Seleccionar]
struct ejemplo {
string a;
string b;
string c;
};


Código: [Seleccionar]
leido=rellenavector(mi,tam,nomfich);//funcion1
if(leido==false){
cout<<"No se pudo abrir el fichero."<<endl;
}

for(int i=0;i<tam;i++){
    cout<<"----------------"<<endl;
cout<<"A es igual: "<<mi[i].a<<endl;
cout<<"B es igual: "<<mi[i].b<<endl;
cout<<"C es igual: "<<mi[i].c<<endl;
}
}
bool rellenavector(Ejemplo m[],int& tam,const string& fichero){
ifstream leer(fichero.c_str());

if(leer){
tam=0;
while(getline(leer>>ws, m[tam].a,';')){
getline(leer>>ws,m[tam].b,';');
getline(leer>>ws,m[tam].c,';');
tam++;
}

Es decir, mi funcion lo que hace es leer los datos que yo almaceno en un fichero, que estan separados por ';' y posteriormente los muestra por pantalla. Mi duda es como hacer exactamente lo mismo, pero en vez de definir una estructura definiendo una clase.

¡Un saludo!
« última modificación: Martes 29 de Mayo de 2012, 17:34 por VVV »

david_lomber

  • Miembro activo
  • **
  • Mensajes: 34
  • Nacionalidad: mx
  • Impossible is nothing, just do it!!
    • Ver Perfil
    • Pelis DVDRip
Re:Leer ficheros caracter a caracter [Clases]
« Respuesta #1 en: Lunes 28 de Mayo de 2012, 03:23 »
0
Código: C++
  1. class ejemplo {
  2.    string a;
  3.    string b;
  4.    string c;
  5. };

???
« última modificación: Lunes 28 de Mayo de 2012, 03:28 por david_lomber »

VVV

  • Nuevo Miembro
  • *
  • Mensajes: 3
  • Nacionalidad: 00
    • Ver Perfil
Re:Leer ficheros caracter a caracter [Clases]
« Respuesta #2 en: Lunes 28 de Mayo de 2012, 16:28 »
0
No, asi no me deja, lo he intentado pero los getlines y demas me los da como error.

No se si hay que implementar algo en el .h o como va. A ver si alguien pudiera resolver la duda.

¡Gracias de todas formas!

ProfesorX

  • Moderador
  • ******
  • Mensajes: 796
  • Nacionalidad: mx
    • Ver Perfil
Re:Leer ficheros caracter a caracter [Clases]
« Respuesta #3 en: Lunes 28 de Mayo de 2012, 20:00 »
0
Es raro, porque asi es como se debe definir una clase como si fuera una estructura.

Dices que te da error en el getline, pero no pones el codigo completo, ni tampoco mencionas cual es el error que te marca. Mi recomendacion es que publiques el codigo completo y el error, de esa manera podemos ver mas claramente cual es el error, ya que es probable que el error este en otra parte del porgrama o algo que estas poniendo mal.

Otra cosa, ultiliza [ code] en lugar de [ quote], ya que con el quote, los [ i ] se traduce como texto en italica (inclinado) y si te fijas, tu codigo aparece con letras inclinadas.

Saludos :)

NOTA:
==================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
==================================================================

VVV

  • Nuevo Miembro
  • *
  • Mensajes: 3
  • Nacionalidad: 00
    • Ver Perfil
Re:Leer ficheros caracter a caracter [Clases]
« Respuesta #4 en: Martes 29 de Mayo de 2012, 17:33 »
0
Creo que no me he explicado bien, a ver como puedo explicarlo para que se entienda.

Por ejemplo, pongamos este supuesto.

Citar
Crear un programa que gestione clientes de una empresa. Una de las funciones de ese programa seria mostrar por pantalla los datos de los clientes. Estos datos estan registrados en un fichero de la siguiente manera.El fichero se llama clientes.txt

Nombre;Apellidos;DNI;Edad
Ej: Jose;Jimenez Jimenez;88888822S;22

Que funcion tendria que implementar tanto en el .h, como en el main.cpp para que el programa pudiera leer esos datos. Obviamente seria definiendo la clase cliente, no una estructura cliente.

Creo que lo he explicado algo mas claro :)!