std::getline() funktioniert nicht
-
Guten Abend,
ich habe soeben versucht, eine .txt Datei zu öffnen. Das ist mir gelungen. Nur kann ich die Funktion std::getline nicht aufrufen. Kann mir wer sagen, was ich falsch gemacht habe?
LG#include <iostream> #include <fstream> int main() { std::ifstream file("database.txt"); file.open("database.txt"); if (file.is_open()) { std::cout << "File wurde erfolgreich geoefnet" << std::endl; std::string line; while (std::getline(file, line)) { std::cout << line; } } }
-
@redexception sagte in std::getline() funktioniert nicht:
Nur kann ich die Funktion std::getline nicht aufrufen
Wie kommst du darauf?
Wie äußert sich das?
-
Habe vergessen String zu inkludieren. Weil da eine Fehlermeldung kommt mit std:: hat keinen Member getline()
-
@redexception
Du solltest immer beschreiben was der Fehler genau ist. D.h. wenn du vom Compiler eine Fehlermeldung bekommst, dann diese bitte immer dazuschreiben (1:1 mit Copy + Paste, um Fehler zu vermeiden).
-
@redexception sagte in std::getline() funktioniert nicht:
Habe vergessen String zu inkludieren. Weil da eine Fehlermeldung kommt mit std:: hat keinen Member getline()
Wenn du das nächste Mal für ein Problem Hilfe haben möchtest, kopiere bitte die Fehlermeldung des Compilers anstatt diese mit eigenen Worten zu verwässern (also nicht: "ich kann xy nicht aufrufen" - bzw. du kannst das schon so schreiben, wenn du zusätzlich die echte Fehlermeldung kopierst).
Ich habe noch einen zweiten Tipp:
std::ifstream file("database.txt"); file.open("database.txt");
Das ist doppelt gemoppelt. Mit
std::ifstream file("database.txt");
öffnest du die Datei bereits zum Lesen. Du kannst die 2. Zeile also weglassen.
-
Okay, danke. Ich achte in zukunft drauf