文字列ごとに逆の順序でQFileへの書き込みを実装する方がよい方法。seek(0)を使用すると、古い文字列の上に新しい文字列が書き込まれます。
2105 次
2 に答える
4
QStack
QStringのを使用する必要があります。LIFO(後入れ先出し)コンテナなので、探しているものだと思います。
各文字列が来たらプッシュしてから、すべての文字列をポップします。
QStack<QString> stack;
stack.push("first string");
stack.push("second string");
stack.push("third string");
while (!stack.isEmpty())
{
QString string = stack.pop();
}
編集:(書き込む2つのファイルに関するコメントの新しい情報)
を使用しQvector
てすべてのQStringを保存します。次に、forループで最初と最後の要素にアクセスして、各ファイルに書き込みます。これは次のように実行できます。
QVector<QString> vector;
vector.append("first string");
vector.append("second string");
vector.append("third string");
int size = vector.size();
for (int i=0; i<size; i++)
{
QString string1 = vector[0]; // write it in one file
Qstring string2 = vector[size-1-i]; // write it in another file
}
それがあなたの質問に答えることを願っています。
于 2012-02-28T18:03:28.457 に答える
2
すべてのファイルを読み取ります。それをメモリ内のQStringのベクトルに保存します。すべての文字列を逆にしてベクトルを通過し、このベクトルをファイルに再度保存します。
于 2012-02-28T17:50:07.443 に答える