C++ Datei schreiben/Lesen

Ich versuche, ein array zu erstellen, schreiben, array in die Datei und als Sie anzuzeigen. Es scheint zu funktionieren aber ich bekommen nur einen Teil der Ausgabe (die ersten 3 Elemente) oder bekomme ich die Werte über die Grenzen.

#include <iostream>
#include <fstream>
using namespace std;

int main()
{
      int arr[20];
      int i;

      for (i = 0; i < 5; i++)
      {
            cout << "Enter the value to the array: " << endl;
            cin >> arr[i];
      }
      ofstream fl("numbers.txt");

      if (!fl)
      {
            cout << "file could not be open for writing ! " <<endl;

      }
      for (i = 0; i < arr[i]; i++)
      {
            fl<<arr[i]<<endl;
      }
      fl.close();
      ifstream file("numbers.txt");
      if(!file)
      {
            cout << "Error reading from file ! " << endl;
      }
      while (!file.eof())
      {
             std::string inp;
             getline(file,inp);
             cout << inp << endl;
      }
      file.close();
      return 0;
}
  • Das sieht falsch aus: for(i=0;i<arr[i];i++)
  • Die while (!file.eof()) ist auch nicht korrekt. Die while-Schleife sollte die Prüfung auf die getline() Ergebnis, aber Sie wird wahrscheinlich nicht den Unterschied bemerken.
InformationsquelleAutor Peter F | 2013-03-27
Schreibe einen Kommentar