Zahlen aus Datei auslesen
-
Hallo,
ich möchte ganz ganz viele Zahlen aus einer Datei auslesen, hab aber keine Ahnung wie es geht. Ich kann bereits Strings aus einer Datei auslesen, es geht mir jedoch daraum, mit den Zahlen weiter zu rechnen. In der Datei sind die Zahlen mit Leerstellen voneinander getrennt.Der bisherige Code:
// reading a text file #include <iostream.h> #include <fstream.h> #include <stdlib.h> int main () { char buffer[256]; ifstream examplefile ("example.txt"); if (! examplefile.is_open()) { cout << "Error opening file"; exit (1); } while (! examplefile.eof() ) { examplefile.getline (buffer,100); cout << buffer << endl; } return 0; }
Wenn ich jetzt aber buffer[1] aufrufe, ist dieses eine ganz andere lange Zahl.
Könnt ihr mir weiterhelfen?
tommy
-
tommy07 schrieb:
Hallo,
ich möchte ganz ganz viele Zahlen aus einer Datei auslesen, hab aber keine Ahnung wie es geht. Ich kann bereits Strings aus einer Datei auslesen, es geht mir jedoch daraum, mit den Zahlen weiter zu rechnen. In der Datei sind die Zahlen mit Leerstellen voneinander getrennt.Dann lässt sich doch prima mit einem int oder double Vektor (Je nachdem was für Zahlen du einlesen willst) arbeiten.
mache aus dem char buffer[] einen int buffer[] (Bei Ganzzahlen) oder einen double buffer[] (bei Gleitpunktzahlen). Und lese dann die verschiedenen Zahlen perfile_stream_name >> buffer[i]; // Im i-ten Element die nächste Zahl speichern
ein.
Ansonsten verwende doch noch die aktuellen C++-Standard-Header.Wenn du nicht weißt wieviele Zahlen in der Datei stehen, solltest du einen std::vector benutzen.
Caipi