ERLEDIGT
JA
JA
ANTWORTEN
5
5
ZUGRIFFE
1138
1138
EMPFEHLEN
-
09.06.07 15:02 #1
- Registriert seit
- Apr 2007
- Beiträge
- 51
Hallo,
ich möchte in einem Programm eine Datei einlesen und die Anzahl der Zeilen herausfinden. Gibt es da irgendeine Möglichkeit. Die Zeilen haben immer unterschiedliche, unbekannte Längen.
Ich hab gedacht, dass es vielleicht irgendeine Möglichkeit gibt das über find() zu machen. Vielleicht gibts aber sogar eine Funktion find_number_of()
Bin dankbar für jede Hilfe
bastionmancher
-
09.06.07 15:16 #2
- Registriert seit
- May 2004
- Ort
- Wassenberg (NRW)
- Beiträge
- 120
Du kannst beim einlesen die Anzahl der "\n" bzw. "\r\n" unter Windows zählen.
Gruß,
SuperSonik
-
09.06.07 15:26 #3
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Es gibt sicherlich mehrere Möglichkeiten.
Bsp. 1:Code cpp:1 2 3 4 5 6
ifstream file(...); string zeile; int anzahl = 0; while(getline(file, zeile)) anzahl++;
Bsp. 2GrußCode cpp:1 2 3 4 5 6 7 8 9 10 11
#include <algorithm> #include <iomanip> #include <iterator> ... ifstream file(...); file >> noskipws; cout << "Zeilen: " << count(istream_iterator<char>(file), istream_iterator<char>(), '\n') << endl;
Geändert von deepthroat (09.06.07 um 15:37 Uhr)
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
09.06.07 15:31 #4
- Registriert seit
- Apr 2007
- Beiträge
- 51
Ich finde deine erste Möglichkeit eigentlich am elegantesten deepthroat. Aber stoppt denn die while Schleife automatisch bei eof? Oder müsste man das irgendwie so machen:
bastionmancherCode :1
while(getline(file, zeile)!=EOF)
-
09.06.07 15:35 #5
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Nein. Man muß (eigentlich) niemals mit den iostream Klassen explizit auf EOF prüfen. Die Eingabe- und Ausgabe-Operatoren der Stream Klassen geben immer den Streamzustand zurück - der ist nur "true" wenn weder EOF, noch irgend ein anderer Fehler aufgetreten ist. Wenn man C++ Code sieht der explizit auf EOF prüft, dann hat derjenige vermutlich nicht verstanden wie man die iostream Klassen verwenden sollte.
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
09.06.07 16:08 #6
- Registriert seit
- Apr 2007
- Beiträge
- 51
okay. Vielen dank für deine Hilfe!
bastionmancher
Ähnliche Themen
-
Wie mehrere Zeilen gleichzeitig aus Datei einlesen?
Von kela_root im Forum JavaAntworten: 4Letzter Beitrag: 25.09.09, 17:01 -
Öffen\einlesen von verschiedenen Zeilen aus einer Datei
Von kanada im Forum .NET CaféAntworten: 7Letzter Beitrag: 29.10.08, 20:54 -
alle zeilen einer datei einlesen
Von lambofgod im Forum C/C++Antworten: 0Letzter Beitrag: 28.05.07, 20:57 -
Anzahl der Datensätze einer Datei bestimmen
Von Katzenbauer im Forum Visual Basic 6.0Antworten: 2Letzter Beitrag: 17.06.04, 19:09 -
Anzahl der Zeilen in CSV-Datei auslesen
Von folio im Forum PHPAntworten: 2Letzter Beitrag: 11.06.04, 10:10





Zitieren

Login






