如何以反向順序(逐個字符串)實現對QFile的寫入更好。 使用seek(0)將新字符串寫入舊字符串。在QT中寫入反向文本文件
回答
您應該使用QString的QStack
。因爲它是一個LIFO(後進先出)容器,我認爲這是你正在尋找的。
按每個字符串,因爲他們來,然後彈出所有字符串:
QStack<QString> stack;
stack.push("first string");
stack.push("second string");
stack.push("third string");
while (!stack.isEmpty())
{
QString string = stack.pop();
}
編輯:(在關於兩個文件評論新的信息寫入)
使用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
}
希望能回答你的問題。
謝謝。 問題是我有幾個QList
因此,你可以使用QVector,因爲你可以直接訪問一個元素。看我的編輯。 – 2012-02-29 19:52:53
閱讀全部文件。將其保存到內存中的QStrings矢量中。通過反轉所有字符串的矢量並將該矢量再次保存到文件中。
- 1. Qt:寫入文件
- 2. 寫入Qt中的文件
- 3. 如何在qt中讀取/寫入文本文件?
- 4. 反向鏈表和寫入文件:Java
- 5. 在Qt中創建/寫入新文件
- 6. qt寫入結束文件
- 7. 如何在QT中的文本文件中插入文本?
- 8. 向垂直列中的文本文件寫入向量
- 9. 向文本框寫入大量文本
- 10. Qt - 在文件開頭重複寫入
- 11. 在Matlab中寫入文本文件
- 12. 在文本文件中寫入對象
- 13. 在Python中將文本寫入文件
- 14. 在線程中寫入文本文件
- 15. Python,在TXT文件中寫入文本
- 16. 在swift中寫入文本文件3
- 17. 反覆寫入文件
- 18. 在Qt資源系統中讀取和寫入文件(qt 5.0.2)
- 19. 寫入嵌入在資源文件中的文本文件C#
- 20. 如何通過命令行向文本文件寫入文件?
- 21. 通過Qt文本文件進行讀取,寫入和搜索
- 22. ScrollView在編輯文本中寫入文本後向上滾動
- 23. Powershell - 寫入文本文件
- 24. PHP寫入文本文件
- 25. Android寫入文本文件
- 26. 寫入文本文件
- 27. 將文本寫入文件
- 28. 寫入文本文件
- 29. JSP寫入文本文件
- 30. 寫入文本文件
你想從頭到尾寫入一個文件,還是隻想要反轉一個文本文件? – Spidey 2012-02-28 23:18:50
我需要從頭到尾寫入一個文件。我沒有這個文件,我有一個要寫的數據。 – Funt 2012-02-29 14:33:28
我不認爲這在FS/OS級別上是可行的。您應該首先恢復數據,然後依次寫入。最接近你可以寫回它的地方是填充到最後,搜索每個字節,從結尾到開始,逐字節地寫入。這不是一個好策略,如果你有足夠的內存,你應該把所有內容堆疊起來,然後拆開並寫入每一個內存。 – Spidey 2012-03-01 13:18:48