Alles rund um die Programmierung mit Qt
nkc
Beiträge: 67 Registriert: 3. November 2008 12:01
Beitrag
von nkc » 23. Februar 2009 10:47
Hallo,
ich möchte eine Textdatei einlesen.
Dazu benutze ich den Beispielcode von der QT-Doc QFile:
Zu
bekomme ich folgende Fehlermeldung:
process_line was not declared in this scope
In der Doku wird dieses auch nicht weiter erläutert.
danke
pfid
Beiträge: 535 Registriert: 22. Februar 2008 16:59
Beitrag
von pfid » 23. Februar 2009 11:30
Als Denkanstoß: Was soll die Funktion denn tun?
nkc
Beiträge: 67 Registriert: 3. November 2008 12:01
Beitrag
von nkc » 23. Februar 2009 11:36
Solange das Ende der Textdatei nicht erreicht wurde,
sollen die Zeilen eingelesen werden:
Ich denke, dass die Methode
line zum Ausgeben bereitstellt.
pfid
Beiträge: 535 Registriert: 22. Februar 2008 16:59
Beitrag
von pfid » 23. Februar 2009 11:38
Die Funktion process_line verarbeitet die eingelesene Zeile (process = englisch für verarbeiten).
Und da Trolltech wohl nicht weiß, wie du eine eingelesene Zeile verarbeiten willst, musst DU diese Funktion wohl implementieren
Kurz: Das ist eine Dummyfunktion die symbolisieren soll dass du dann die eingelesene Zeile in der Variable line verarbeiten kannst.
nkc
Beiträge: 67 Registriert: 3. November 2008 12:01
Beitrag
von nkc » 23. Februar 2009 11:45
Ok, dann würde ich sage ich kann line ausgeben:
Code: Alles auswählen
while (!file.atEnd())
{
QByteArray line = file.readLine();
cout << line;
}
Leider funktioniert das nicht.
nkc
Beiträge: 67 Registriert: 3. November 2008 12:01
Beitrag
von nkc » 23. Februar 2009 11:55
Ich möchte den Dateiinhalt auf der Konsole ausgeben.
pfid
Beiträge: 535 Registriert: 22. Februar 2008 16:59
Beitrag
von pfid » 23. Februar 2009 12:17
Ich würde sagen das liegt daran dass QByteArray keinen << Operator hat der mit einem ostream umgehen kann.
Das zb. sollte gehn:
nkc
Beiträge: 67 Registriert: 3. November 2008 12:01
Beitrag
von nkc » 23. Februar 2009 12:56
Nein so funktioniert das leider auch nicht.
pfid
Beiträge: 535 Registriert: 22. Februar 2008 16:59
Beitrag
von pfid » 23. Februar 2009 13:05
Dann stimmt was mit deinem Programm nicht, bei mir funktionierts problemlos.
nkc
Beiträge: 67 Registriert: 3. November 2008 12:01
Beitrag
von nkc » 23. Februar 2009 15:20
Ich benutze den QCreator.
Dieser ist momentan in der Beta Version verfügbar.
Kann sein, dass es daran liegt.
pfid
Beiträge: 535 Registriert: 22. Februar 2008 16:59
Beitrag
von pfid » 23. Februar 2009 15:52
Vielleicht in der .pro Datei das CONFIG += console vergessen?
nkc
Beiträge: 67 Registriert: 3. November 2008 12:01
Beitrag
von nkc » 24. Februar 2009 13:54
Genau das war's. Jetzt funktionierts, danke.
Aber wann muss ich denn immer der .pro-Datei etwas hinzufügen.
Das ist nicht nur bei der Ausgabe in der Konsole so.
Gibt es eine Doku dazu?
pfid
Beiträge: 535 Registriert: 22. Februar 2008 16:59
Beitrag
von pfid » 24. Februar 2009 14:52