fcamuso

Corso Recupero - 19 lettura da file di testo

Jul 31st, 2021
576
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <iostream>
  2. #include <fstream>
  3.  
  4. using namespace std;
  5.  
  6. void stampaArrayStringhe(string v[], int quanti)
  7. {
  8.   for (int i=0; i<quanti; i++)
  9.   {
  10.     cout << i+1 <<": "<<v[i]<<endl;
  11.   }
  12. }
  13. int main()
  14. {
  15.   const int MAX=2;
  16.   string nomi[MAX]; // = {"Rossi", "Verdi","Azzurri", "Viola","Gialli"};
  17.   int inseriti=5;
  18.  
  19. //  ofstream scrivi("dati.txt", ios::app);
  20. //
  21. //  if (scrivi)
  22. //  {
  23. //    for (int i=0; i<inseriti; i++)
  24. //    {
  25. //      scrivi << nomi[i] << endl;
  26. //    }
  27. //    scrivi.close();
  28. //  }
  29. //  else
  30. //  {
  31. //    cout << "Creazione del file fallita!";
  32. //  }
  33.  
  34.  
  35.   //UN DATO PER RIGA
  36.   inseriti=0;
  37.   ifstream leggi("un_dato_per_riga.txt");
  38.  
  39.   if (leggi)
  40.   {
  41.     while (inseriti<MAX && leggi>>nomi[inseriti])
  42.     {
  43.       inseriti++;
  44.     }
  45.  
  46.     string temp;
  47.     if (leggi>>temp)
  48.     {
  49.        cout << "Memoria di lavoro esaurita, alcuni dati non sono stati letti dal file\n";
  50.     }
  51.  
  52.     leggi.close();
  53.  
  54.  
  55.     stampaArrayStringhe(nomi,inseriti);
  56.   }
  57.   else
  58.   {
  59.     cout << "Apertura del file fallita!";
  60.   }
  61.  
  62.  
  63.   //UN DATO PER RIGA MA PIÙ RIGHE DA CONSIDERARE INSIEME
  64.  
  65.   leggi.open("un_dato_per_riga_bis.txt");
  66.  
  67.   string cognome="", nome="";
  68.   int eta=0;
  69.   if (leggi)
  70.   {
  71.     while (leggi>>cognome>>eta)
  72.     {
  73.        cout << cognome << " " << eta << endl;
  74.     }
  75.  
  76.     leggi.close();
  77.   }
  78.   else
  79.   {
  80.     cout << "Apertura del file fallita!";
  81.   }
  82.  
  83.   //TRE DATI PER RIGA
  84.  
  85.   leggi.open("tre_dati_per_riga.txt");
  86.  
  87.   cognome="", nome="";
  88.   eta=0;
  89.   if (leggi)
  90.   {
  91.     while (leggi>>cognome>>nome>>eta)
  92.     {
  93.        cout << cognome << " " << nome << " " << eta << endl;
  94.     }
  95.  
  96.     leggi.close();
  97.   }
  98.   else
  99.   {
  100.     cout << "Apertura del file fallita!";
  101.   }
  102.  
  103.   leggi.open("testo_libero.txt");
  104.   string riga_letta="";
  105.   while(getline(leggi, riga_letta))
  106.   {
  107.     cout << riga_letta << endl;
  108.   }
  109.   leggi.close();
  110.  
  111.     return 0;
  112. }
  113.  
RAW Paste Data