elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  registros es c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: registros es c++  (Leído 3,149 veces)
bash

Desconectado Desconectado

Mensajes: 258



Ver Perfil
registros es c++
« en: 15 Mayo 2010, 00:37 am »

buenas a todos otra ves ahora vengo con otra dudita.


Código
  1.  
  2. //supongamos que solo quiero leer un registro de varios en un archivo .bin
  3. //con una estructura.
  4.  
  5. #include <fstream>
  6.  
  7. int main()
  8. {
  9.   long lon;
  10.    struct bin_reg{
  11.      int c;
  12.      char r;      
  13. }obj, otro;
  14.     fstream reg("security.bin" ios::binary  | ios::in  | ios::app );
  15.    //se que tengo que tener la longitud del archivo
  16.  lon = reg.tellg();
  17.   //bla....
  18.   //se que tengo que tener la longitud del archivo
  19.   //pero no se como desplasamer  hasta una posicion x donde quiero un valor .
  20.  
  21.  reg.read((char*)(obj), sizeof(bin_reg));
  22.  reg.read((char*)(otro), sizeof(otro));
  23.   cout << obj.c << endl <<endl ;
  24.   ...reg.close();
  25.  


en realidad estoy bastante perdido en esto pero tratare de expresarme
tengo que crear un src que cree un archivo en modo binario luego introduzca varios datos de una estructura claro usando registro luego checkear la estructura con otras variables del tipo de dentro de la estructura luego leer y actualizar . por favor ayudenme no pido tanto src si no algun empujonsito para saber como hacer esto yo mismo.

gracias


En línea

gracias por responder mis dudas
bash

Desconectado Desconectado

Mensajes: 258



Ver Perfil
Re: registros es c++
« Respuesta #1 en: 16 Mayo 2010, 16:50 pm »

perdon por el doble post

kla verdad tengo que disculparme por ser tonto y postearde esta forma pero en realidad lo nesecito mucho tal ves esta ves con el codigo mas "elaborado"

tengo esta struct
Código
  1. //estrucutura que controla los datos
  2. struct Banco{
  3.    string cuenta;
  4.    short int pin;
  5.    int balance;
  6.  
  7. };
  8.  
  9.  
esta funcion crea el archivo para su actualizacion.
Código
  1.  
  2. bool crearcuentas()
  3. {
  4.    char resp;
  5.    fstream Archivo1;
  6.    Banco obj;
  7.  
  8.    Archivo1.open("Cuentas.bin", ios::binary | ios::out);
  9.    if(Archivo1){
  10.    cout<<"Bienvenido programador de cajero "<<endl;
  11.    do{
  12.    cout<<"vamos a iniciar un registro."<<endl<<"Digite su cuenta seguida de el signo de #"<<endl<<"";
  13.    getline(cin , obj.cuenta, '#');
  14.    cin.ignore();
  15.    cout<<"digite el pin de esa cuenta"<<endl;
  16.    cin >> obj.pin;
  17.    cin.ignore();
  18.    cout<<"digite el balnce de esa cuenta."<<endl;
  19.    cin >> obj.balance;
  20.    cin.ignore();
  21.  
  22.  
  23.    Archivo1.write((char*)(&obj), sizeof(Banco));
  24.    cout<<"procesar otra cuenta cuenta s o S para continuar."<<endl;
  25.    cin >> resp;
  26.    }while(resp == 's' || resp == 'S');
  27.    Archivo1.close();
  28.    return true;
  29.    }else cout<<"Error : abriendo el archivo."; return false;
  30.  
  31.    return true;
  32.  
  33. }
  34.  
  35.  
  36.  

quiero hacer algo asi

Código
  1. //// funcion para actualizar el balance del registro
  2. //codigo de alex cruz
  3.  
  4. void update (cuentas cliente,int pin , int nocuent ,int balance, int retiro,int pos){
  5.  
  6. cout<<pos<<endl;
  7. fstream  compare("cuentas.bin", ios::out| ios::binary);
  8. compare.seekp( ((pos) * sizeof(cuentas)), ios::beg);
  9. cliente.balance=balance-retiro;
  10. compare.write((char*)(&cliente), sizeof(cuentas));
  11. compare.close();
  12.  
  13. }

entoces el problema es que cuando trato de actualizar las cuentas no pasa NADA es como si no hiciera nada.

espero que alguien me pueda ayudar por favor
Código
  1. GRACIAS y DISCULPEN las molestias.
[/b]


En línea

gracias por responder mis dudas
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Consutla registros MX
GNU/Linux
_CrisiS_ 2 11,104 Último mensaje 26 Noviembre 2012, 00:23 am
por soson
Archivos, Registros en c/c++
Programación C/C++
programador10 3 6,257 Último mensaje 14 Junio 2011, 16:11 pm
por programador10
registros del msn
Mensajería
lizzapodrida 4 4,845 Último mensaje 26 Septiembre 2011, 22:02 pm
por scr21
Acerca de registros FS y GS
ASM
x64core 4 5,005 Último mensaje 14 Diciembre 2011, 00:07 am
por x64core
registros php
Desarrollo Web
Thekraken 0 1,761 Último mensaje 20 Diciembre 2011, 15:02 pm
por Thekraken
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines