Ich mache eine Übung, wo ich Koordinaten in eine TXT-Datei mit dem Namen MeineDaten speichern und dann aus dieser Datei zurücklesen. Allerdings I "m Mühe, es wieder zu lesenLesen von Daten aus einer Datei
Code:.
#include "std_lib_facilities.h"
// Classes----------------------------------------------------------------------
struct Point{
Point(int a, int b):x(a), y(b) {};
Point(){};
int x;
int y;
};
// Main-------------------------------------------------------------------------
int main()
{
vector<Point> original_points;
vector<Point> processed_points;
cout << "Please enter 7 coordinate pairs.\n";
int x, y;
while(cin >> x >> y){
if(x == -1 || y == -1) break;
original_points.push_back(Point(x, y));}
cout << "Please enter file to send points to.\n";
string name;
cin >> name;
ofstream ost(name.c_str());
if(!ost)error("can't open output file", name);
for(int i = 0; i < original_points.size(); ++i)
ost << original_points[i].x << ',' << original_points[i].y << endl;
ost.close();
cout << "Please enter file to read points from.\n";
string iname;
cin >> iname;
ifstream ist(iname.c_str());
if(!ist)error("can't write from input file", name);
while(ist >> x >> y) processed_points.push_back(Point(x, y));
for(int i = 0; i < processed_points.size(); ++i)
cout << processed_points[i].x << ',' << processed_points[i].y << endl;
keep_window_open();
}
Um zu testen, um zu sehen, ob die Daten aus der Datei gelesen wird, ich es zurück in ein verarbeitetes Punkte Vektor bin drängen, aber wenn ich betreiben das Programm und Punkte eingeben, es Ausgabe nicht alle Punkte aus dem processed_points Vektor. ich denke, das Problem in der ist ...
while(ist >> x >> y)
und dies ist nicht der richtige Weg, aus einer Datei zu lesen Jede Hilfe wäre willkommen, danke.