Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/08/2011, 08:29
Avatar de baker1562
baker1562
 
Fecha de Ingreso: marzo-2011
Ubicación: Puntarenas
Mensajes: 261
Antigüedad: 13 años, 8 meses
Puntos: 9
Pregunta Mas dudas sobre fstream

Hola, necesito que me ayuden a aclarar algo sobre un programa, hice un programa donde ingreso cualquier palabra y esta se almacena en un arreglo de 3 posiciones, pero al mismo tiempo son exportados a un archivo externo llamado "lectura.dat", como bien se sabe cuando se hace un programa sencillo en c++, los datos se guardan en memoria temporalmente y cuando se cierra el programa todo lo que alla adentro se va, al grano, yo cuando exporto las siguientes palabras de ejemplo

casa-loro-perro,

estas a la hora de volver abrir el programa, se posicionan de nuevo en el arreglo?

Código C++:
Ver original
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <fstream>
  4. #include <cstdlib>
  5.  
  6. using namespace std;
  7.  
  8. int main()
  9. {
  10.     int opcion;           //variable para escoger el case en el swith
  11.     char palabras[3][100];
  12.     int i=0;
  13.     int contador;       //char de 100 elementos para guardar cualquier palabra
  14.     string respuesta;         //pertenece al while
  15.    
  16.    
  17.    
  18.    
  19.    
  20.     while(respuesta!="N" && respuesta!="n")
  21.     {
  22.    
  23.     cout<<"Digite la opcion#1, para escribir en el archivo de lectura!!!"<<endl;
  24.     cout<<"Digite la opcion#2, para mostrar el archivo de lectura!!!"<<endl;
  25.     cout<<"Digite la opcion#3, para mostrar el archivo de escritura!!!"<<endl;
  26.     cout<<"Digite la opcion#4, para mostrar la matriz!!!"<<endl;
  27.     cout<<endl;
  28.     cout<<"Que opcion desea realizar?"<<endl;
  29.     cin>>opcion;
  30.    
  31.     ifstream ArchivoI2("i.dat", ios::in);
  32.     ArchivoI2>>i;
  33.    
  34.     switch(opcion)
  35.     {
  36.                   case 1:
  37.                         {
  38.                             if(i<3)
  39.                             {
  40.                         ofstream ArchivoLectura("Lectura.dat", ios::app);  //el oftream abre o crea un archivo de escritura, el ios::out abriera el archivo y escrbiera algo nuevo en el
  41.                         ofstream ArchivoContador("Contador.dat", ios::out);
  42.                         ofstream ArchivoI("i.dat", ios::out);
  43.                        
  44.                         if(!ArchivoLectura)     //if por si el archivo no existe
  45.                         {
  46.                            cerr<<"No se pudo abrir el archivo"<<endl;
  47.                            cout<<endl;
  48.                            system("pause");
  49.                            exit(1);
  50.                            }
  51.                            cout<<"Ingrese algo en letras:"<<endl;        //se ingresa cualquier palabra
  52.                            cin>>palabras[i];
  53.                            
  54.                            ArchivoLectura<<palabras[i]<<endl;        //la palabra pasa al archivo externo
  55.                            contador=i;
  56.                            i++;
  57.                            
  58.                            ArchivoContador<<contador;
  59.                            ArchivoI<<i;
  60.                            
  61.                            }
  62.                            else
  63.                            {
  64.                                cout<<"Memoria Llena"<<endl;
  65.                                cout<<endl;
  66.                                system("pause");
  67.                                }
  68.                                }
  69.                            
  70.                   break;
  71.                  
  72.                   case 2:
  73.                         {
  74.                         ifstream ArchivoLectura2("Lectura.dat", ios::in);      //ifstream sirve para mostrar el archivo, el ios::in lo muestra en consola
  75.                         ifstream ArchivoContador2("Contador.dat", ios::in);
  76.                        
  77.                         if(!ArchivoLectura2)             //if por si no existe el archivo
  78.                         {
  79.                           cerr<<"No se pudo abrir el archivo!!"<<endl;
  80.                           cout<<endl;
  81.                           system("pause");
  82.                           exit(1);
  83.                           }
  84.                          
  85.                           ArchivoContador2>>contador;
  86.                           for(int i=0;i<(contador+1);i++)
  87.                           {
  88.                           ArchivoLectura2>>palabras[i];                 //se mostrara lo que hay en el archivo anterior
  89.                           }
  90.                           for(int i=0;i<(contador+1);i++)
  91.                           {
  92.                           cout<<palabras[i]<<endl;
  93.                           }                  
  94.                          
  95.                           system("pause");
  96.                           }
  97.                   break;
  98.                  
  99.                   case 3:
  100.                        {
  101.                        ifstream ArchivoEscritura("Escritura.txt", ios::in);                    //se mostrara el archivo de escritura
  102.                        
  103.                        if(!ArchivoEscritura)           //if por si no existe
  104.                        {
  105.                          cerr<<"No se pudo abrir el archivo!!"<<endl;
  106.                          cout<<endl;
  107.                          system("pause");
  108.                          exit(1);
  109.                          }
  110.                          }
  111.                   break;
  112.                  
  113.                   case 4:
  114.                        
  115.                        {
  116.                                  for(int i=0;i<(contador+1);i++)
  117.                                  {
  118.                                          cout<<palabras[i]<<endl;
  119.                                          
  120.                                          }
  121.                                          system("pause");
  122.                                          }
  123.                        break;
  124.                   }
  125.                  
  126.                   cout<<"Desea realizar otra accion s/n?"<<endl;
  127.                   cin>>respuesta;
  128.                   system("cls");
  129.                   }
  130.                  
  131.                   return 0;
  132.                  
  133.                   }