Das Beispiel versteh ich nicht im Bezug auf die Hilfsfunktionen...
Außerdem liest er das ja nicht aus einer Datei, schreibt es auch nicht in die Datei, und speichert es auch nicht in jener... :/
Die Filme werden in die txt Datei reingeschrieben, siehe oben.
Jetzt will ich aber diese wieder ausgeben können, und zwar immer bestimmte Eigenschaften auf abruf...
z.B. Film[2].beschreibung.
Ich finde meinen Denkfehler nicht...
Ich komm schon seit 2 Tagen nicht mehr weiter... ~.~
Trotz mehrfachem Missbrauchs von google... :/
Außerdem liest er das ja nicht aus einer Datei, schreibt es auch nicht in die Datei, und speichert es auch nicht in jener... :/
Code:
#include <cstdlib>
#include <iostream>
#include <string>
#include <time.h>
#include <fstream>
#include <sstream>
#include <vector>
using namespace std;
struct Bluray //Bluray Struktur
{
string name;
string genre;
int bewertung;
string beschreibung;
};
const int maxfilm=20; //Bluray Array
//Bluray film[maxfilm];
const int maxsich=2000;
string alle[maxsich];
void Textauslesen(); //Auslesen aus txt Datei und Speichern in array
int readnumber(); //Einlesen einer Zahl
int backtothemenu(); //Zurück zum Menü - Abfrage
void Menu(); //Hauptmenü - Ausgabe
void Erweiterung(); //Schreiben in txt Datei
main() //Rein ins Menü!
{
cout << endl << "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n";
cout << endl << "\tWillkommen in meiner selbst erstellten Bluray Bibliothek! \n";
cout << "\tMomentan noch in der Testphase!\n";
Menu();
}
void Erweiterung() //Erweiterung der Bibliothek, Reinschreiben in die txt Datei
{
Bluray film[maxfilm];
int Filmanzahl;
cout << "Wie viele Filme möchten Sie der Liste hinzufügen? ";
Filmanzahl = readnumber();
int i=0;
for (i=0; i<Filmanzahl; i++)
{
cout << endl << Filmanzahl << ". Film:" << endl; //Strukturabfrage
cout << endl << "Name : ";
getline(cin, film[i].name);
cout << endl << "Genre: ";
getline(cin, film[i].genre);
cout << endl << "Bewertung: ";
film[i].bewertung = readnumber();
cout << endl << "Beschreibung: ";
getline(cin, film[i].beschreibung);
cout << "Sie haben den "<< i+1 << ". Film mit dem Namen " << film[i].name << " mit der Bewertung ->" << film[i].bewertung << "dem Genre: " << film[i].genre << endl << "und der Beschreibung: -> " << film[i].beschreibung << " <-erfolgreich hinzugefügt! " << endl;
std::ofstream ofs ("summe.txt", std::ios::app ); //Schreibvorgang mit Trennparameter
ofs << film[i].name << "|"
<< film[i].genre << "|"
<< film[i].bewertung << "|"
<< film[i].beschreibung << endl;
ofs.close();
}
void Textauslesen()
std::ifstream ifs ("summe.txt");
for (int i =0; i < 1; ++i){
std:: string zeile;
std::getline(ifs, zeile, '\t');
std::istringstream(zeile) >> film[i].name;
//cout << endl << film[i].name;
//usw halt, allerdings funktioniert es so ja nicht...
}
Die Filme werden in die txt Datei reingeschrieben, siehe oben.
Jetzt will ich aber diese wieder ausgeben können, und zwar immer bestimmte Eigenschaften auf abruf...
z.B. Film[2].beschreibung.
Ich finde meinen Denkfehler nicht...
Ich komm schon seit 2 Tagen nicht mehr weiter... ~.~
Trotz mehrfachem Missbrauchs von google... :/