Código:
/*
Datos del Vehiculo
Solicita los datos del vehiculo
Esta estructura esta declarada en el archivo cabecero "proyecto.h"
struct Vehiculo{
char placa[6];
char marca[10];
char modelo[10];
char color;
unsigned long cedula;
};
*/
#include "proyecto.h"
Vehiculo datosVehiculo(unsigned long cedula){
Vehiculo v; // declaracion de una estructura tipo vehiculo ya deficina en el proyecto.h
// solicita los datos del vehiculo
cout<< "\n\n\t\t Vehiculo \n\n"
<<"=> Ingrese los datos del Vehiculo \n\n";
cout<<"\t Placa: ";
cin.getline(v.placa, 6);// debo colocar uno mas grande que el campo, de lo contrario solo lee 4 caracteres y no lee los datos siguientes
cin.seekg(0, ios::end);
cin.ignore(100,'\n');
cout<<"\t Marca: ";
cin.getline(v.marca,10);
cout<<"\t Modelo: ";
cin.getline(v.modelo,10);
cout<<"\t Color: ";
cin.getline(v.color,3);
v.cedula = cedula;
cout<< endl << endl;
fstream Escr_Lect("Vehiculo.bin", ios::out | ios::in | ios::binary | ios::app);
Escr_Lect.write((char*)(&v), sizeof(Vehiculo));
cout <<"Placa: " << v.placa;
//prueba del registro creado
Vehiculo v2;
unsigned long longarchivo(Escr_Lect.tellg());
Escr_Lect.seekg( longarchivo - sizeof(Vehiculo));
//Escr_Lect.seekg(0, ios::beg);
Escr_Lect.read( (char*)(&v2), sizeof(Vehiculo));
cout<<"\n Placa : " << v2.placa
<<"\n Marca : " << v2.marca
<<"\n Modelo: " << v2.modelo
<<"\n Color : " << v2.color
<<"\n Cedula: " << v2.cedula
<< endl << endl;
// retorna el registro del vehiculo en una estructura tipo Vehiculo
return v;
}
con este codigo obtengo la pantalla siguiente:
--------------------------------------------------------------
Código:
Al introducir los datos primero imprimo la placa. Vehiculo
=> Ingrese los datos del Vehiculo
Placa: L4423
// qui debo precionar enter 2 veces, no kiero q esto pase
Marca: Marca
// qui debo precionar enter 2 veces, no kiero q esto pase
Modelo: Modelo
// qui debo precionar enter 2 veces, no kiero q esto pase
Color: RO
//esta es la salida
Placa: L4423Marca
Placa : L4423Marca
Marca : Marca
Modelo: Modelo
Color : RO
Cedula: 2240031513
Presione una tecla para continuar . . .
---------------------------------------------------------
aqui ya pueden observar que la placa se guarda junto con la marca.
luego escribo la estructura en el archivo, leo el ultimo registro y lo imprimo y tambien esta pasando lo de la placa y la marca unidos en un mismo campo.
espero alguien pueda ayudarme pronto.
saludos,


