klaus-dieter
Hacker
Hallo,
ich moechte per c++ ein Textfile auslesen, leider liest mein Programm immer am Ende eine Zeile zuviel (nein keine Leerzeile die ich uebersehen habe). Ich habe folgendes gemacht:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main (int argc, char* argv[]) {
ifstream input_file(argv[1]);
int i=0;
string input_line;
while (!input_file.eof()){
cout << i;
input_line.clear();
getline(input_file,input_line);
cout << input_line << " \n";
i++;
}
input_file.close();
return 0;
}
Als Parameter irgendein Textfile mitgeben und vor jede Zeile wird die Zeilennr. gestellt. Am Ende ist aber immer eine Zeile zuviel. Wieso springt er einmal zu viel in die while Schleife?
Danke und Gruss, J.
ich moechte per c++ ein Textfile auslesen, leider liest mein Programm immer am Ende eine Zeile zuviel (nein keine Leerzeile die ich uebersehen habe). Ich habe folgendes gemacht:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main (int argc, char* argv[]) {
ifstream input_file(argv[1]);
int i=0;
string input_line;
while (!input_file.eof()){
cout << i;
input_line.clear();
getline(input_file,input_line);
cout << input_line << " \n";
i++;
}
input_file.close();
return 0;
}
Als Parameter irgendein Textfile mitgeben und vor jede Zeile wird die Zeilennr. gestellt. Am Ende ist aber immer eine Zeile zuviel. Wieso springt er einmal zu viel in die while Schleife?
Danke und Gruss, J.