Einlesen aus Datei mit QTextStream

Alles rund um die Programmierung mit Qt
Antworten
qtNiko
Beiträge: 216
Registriert: 6. April 2007 21:26
Wohnort: München

Einlesen aus Datei mit QTextStream

Beitrag von qtNiko »

hallo,

ich habe Probleme mit dem Einlesen bei QTextStream:

Eine Textdatei enthält die Zeile

Code: Alles auswählen

Suchbereich vertikal (xmin, xmax, ymin, ymax): 168, 216, 46, 242
von der die 4 Zahlen am Ende einzulesen sind.
Mein erfolgloser Versuch:

Code: Alles auswählen

...
QTextStream intx(&testdat);  // testdat ist ein QFile
...
txt = intx.readLine();     // txt ist ein QString
QTextStream inln(&txt);
inln >> txln;                 // txIn ist ein QString
strcpy(lntx, txln.toAscii().constData());  // nur zum Debuggen, damit ich sehe, was in txIn eingelesen wurde
inln >> txln;
strcpy(lntx, txln.toAscii().constData());  // zum Debuggen
inln >> txln >>  txln >> txln >> txln;
strcpy(lntx, txln.toAscii().constData());  // zum Debuggen
inln >> dec >> i >> j >> k >> l;   // i, j, k, l sind integer
Ich lese also 6 Strings ein. Das funktioniert laut Debugger.
Dann sollen die 4 Integer gelesen werden, die aber alle den Inhalt 0 haben.

Warum?

Dazu die Frage: Kann ich mit dem Debugger (gbd unter Eclipse Europa, fall2) einfach den Inhalt eines QString-Objekts ansehen?
Ich bekomme immer sämtliche Felder und Methoden des Objekts und finde darin keinen String (deshalb der Umweg oben im Code über strcpy() ).
Gruß von qtNiko

Core i5 760, GT 240, Suse Linux11.3, Eclipse-CDT-Helios, QT4.4, QT-Integration
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Warum nicht einfach die ganze Zeile einlesen und splitten - warum müssen es immer streams sein?
Mal versucht die Zahlen nicht als int sondern als QString einzulesen und zu schauen was drinsteht? ich vermute das ',' hinter der Zahl verwirrt Qt
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten