QTextStream::readLine : brauch eine möglichkeit best zeilen auszulesen...
-
normalerweise liest man mit dieser funktion ja eine datei bis zum ende aus. ich muss aber bei kenntnis einer position in der datei, die nachfolgende zeile auslesen.
z.b:44: hier nicht auslesen 45: das hier lesen!
also wie man sieht soll die 45. zeile gelesen werden.
wie kann ich das anstellen, wenn ich nur die zeilennummer 44 habe?
-
while(....)
qstring = file.readLine();
if (qstring == "mytext") //startsWith(), endsWith(), contains()
{
QString zeile45 = file.readLine();
break;
}
-
hehe, ich kenn den genauenen inhalt der zeile nicht, dieser kann sich wiederholen bzw. leicht variieren...
-
außerdem muss ich noch sagen, dass ich bereits erwähnt hatte, das nur der inhalt der davorgehenden zeile bekannt ist... es macht mich traurig das man das problem so schlimm lösen will
naja, gibt es vielleicht ein möglichkeit wie44: hier nicht auslesen 45: das hier lesen!
QString = file.readLine(); for(int zeile = 0; !file.atEnd(); zeile++) if (qstring == "hier nicht auslesen") QString zeile45 = file.readLine(zeile+1);
ist sowas ÄHNLICHES möglich oder muss ich dafür die QT-includes umschreiben... wenn ja welche datei ist das genau woich umbasteln muss?
ich benutz nämlich leider <QtGui> als #include
-
Genau das steht doch da
[code]
while(!eof) << such dir das rausqstring = file.readLine(); << liest Zeile fure Zeile ein
if (qstring == "mytext") //startsWith(), endsWith(), contains() Untersucht die Zeile
{
QString zeile45 = file.readLine(); << falls treffer, lese die naechste Zeile und packe sie in den String
break; verlasse die while schleife, da treffer
}
-
if (qstring == "mytext") // ist der Text von Zeile 44 um es noch klarer zu machen
-
stimmt, ja du benutzt ja zweimal readLine()...darum liest er die nächste zeile, danke