M
Hey hustbaer,
danke für die ausführliche Antwort!
Du hast mit der Suche der ersten Zeile völlig recht. Urspünglich dachte ich, die Datei würde aus einer einzigen Zeile bestehen. Als ich gesehen habe, dass das nicht so ist, habe ich meinen Code nicht verbessert, sondern weiter bearbeitet und gar nicht mehr darüber nachgedacht
Es ist auch das erste Mal, dass ich einen Vector benutze. Ich wusste gar nicht, dass man mittels
chartdata.push_back(day);
gleich alle Daten rausholt. Danke
Und was du da so unleserlich fandest, damit hattest du völlig recht, fand ich auch.
Bzgl. des Errorhandlings - Wie weit soll ich da gehen? Ich habe nun:
file.open("table.csv");
if (!file)
{
std::cerr << "Fehler beim \x99 \bffnen!\nAnderen Dateinamen eingeben (mit Endung): " << std::endl;
// TODO: Error handling - just printing a message and then continuing as if nothing had happened is NOT the right thing to do.
std::string newfile;
std::cin >> newfile;
file.open(newfile);
if(!file)
{
std::cerr << "Das hat auch nicht geklappt! Vielleicht keine Datei vorhanden?" << std::endl;
std::abort();
}
}
Somit wird das Programm nicht aus Versehen weiter ausgeführt. Ich habe überlegt, ob ich noch nach dem Dateinamen fragen soll, bzw. nach einer neuen Datei zum Öffnen. Da ich aber das ganze möglichst einfach haben will, möchte ich möglichst einfach wenn es fertig ist eine .exe ausführen, die mit möglichst wenig Input auskommt.