Seite 1 von 1

Einlesen aus Datei mit QTextStream

Verfasst: 10. Januar 2008 13:48
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() ).

Verfasst: 10. Januar 2008 15:17
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