getline
-
Guten Morgen!
ich versuche gerade eine datei zeilenweise einzulesen. Jede eingelesene Zeile möchte ich weiterverarbeiten. ich habe die Methode geline verwendet.
ifstream in ("acht.tsv"); char zeile[5000]; in.getline(zeile, 5000);jetzt hab ich die gewünschte zeile in zeile als string abgepeichert, weiß aber nicht wie ich diese weiterverarbeiten kann. ich möchte die einzelnen Werte darin in einem array als double-werte abspeichern. Wie kann ich das machen?
-
Gibt die Funktion:
double atof(const char *string);
-
Kann ich das ganze nicht schon beim Einlesen als doublewerte abspeichern? ich dachte, es geht vielleicht einfacher.
-
ameise schrieb:
Kann ich das ganze nicht schon beim Einlesen als doublewerte abspeichern? ich dachte, es geht vielleicht einfacher.
ja kannst du, aber es kommt darauf an wie deine datei vorliegt.
double d; in >> d;
-
irgendwie komm ich gerade nicht weiter. ich habe meine werte in zeile als string abgespeichert. sieht in etwa so aus: 12 34 5 333.33 0.94 33 ...
die einzelnen werte sind mit Tabs getrennt. wie kann ich jetzt die einzelen Werte meinem array A[i] zuweisen?
Hab das mit find("\t")versucht, aber weiß nicht, wie ich genau den wert von tab zu tab speichern kann?
-
gibt es so was wie fscanf auch in C++?
-
so wäre es doch nicht schlecht
std::vector<double> a; // dynamisches array double d; while(in >> d) a.push_back(d);viellecht hilft dir das auch weiter
http://www.cpp-tutor.de/cpp/le04/le04_03.htm
http://cplus.kompf.de/artikel/fwords.html
-
DANKE! so klappts!
