我想從文本文件中讀取特定行,而不是逐行讀取整個文件。例如,如果我在文本文件中有10行,並且必須讀取第6行,我將不會讀取前5行,而是直接讀取第6行。誰能幫我??從文本文件中讀取特定行而不讀取C中的整個文件。
1
A
回答
3
這個問題的答案here
從上面引述,
除非你多瞭解一下這個文件,你不能隨意訪問特定行。新的行由行結束字符的存在劃分,並且它們通常可以發生在任何地方。文本文件不帶有地圖或索引,這將允許您跳到第第行。
如果您知道該文件中的每一行都是相同的長度,那麼您可以使用隨機訪問來跳轉到特定行。沒有這種類型的額外知識,你只能無奈地遍歷整個文件,直到達到你想要的行。
現金引述回答是通過David Heffernan
0
你可以 '索引' 的文件。請注意,這僅僅是值得的,如果你的文本文件:
- 大
- 經常閱讀,很少寫
最簡單的(也可能是最有效的)方法是使用數據庫引擎。只需將您的文件存儲在一張表中,每行一行。
或者,您可以創建自己的索引機制。基本上,這意味着:
- 創建一個新文件(索引)
- 掃描整個文本文件一次,存儲在索引文件中的每一行的偏移
- 重複上述各時間的文本文件中的文本文件更改
查找線ň需要兩個旨在:
- 讀取Ñ第從索引
- 讀取從文本文件中的一行,起始於在索引
相關問題
- 1. C - 從文件中讀取特定行
- 2. 在Node.js中讀取第n行而不讀取整個文件
- 3. 從C#文本文件中讀取一個特定的列
- 4. PHP從大文本文件中讀取特定行600MB文件
- 5. C#從讀取文本文件中讀取二進制文件
- 6. 從文件中讀取特定的行
- 7. C++讀取整個文本文件
- 8. 從Java中的文本文件中讀取特定的行
- 9. 從大文件中讀取特定行
- 10. 從文件中讀取特定行
- 11. 從文件中讀取特定行
- 12. PHP:從文件中讀取特定行
- 13. 從C#中的文本文件讀取#
- 14. 從C中的文本文件讀取
- 15. 批文件從文本文件中讀取特定的字母?
- 16. 從Android上的文本文件中讀取和讀取特定的行
- 17. C#從文本文件開始刪除而不讀取整個文件
- 18. VBS不讀取整個文本文件
- 19. 從文本文件中讀取。 C++
- 20. 從文本文件中讀取objective-c
- 21. 從文件中讀取文本c
- 22. C從文本文件中讀取值
- 23. 從文本文件中讀取C
- 24. 雲數據流:讀取整個文本文件而不是逐行讀取
- 25. C++從文本文件讀取雙行
- 26. 從文本文件逐行讀取C++
- 27. 如何從VHDL文本文件中的特定行讀取
- 28. 從目錄讀取文件,然後讀取同一文件的特定行c#
- 29. 如何從c中的文本文件讀取多行文件#
- 30. 從文件中讀取文本行
偏移發現偏移如果線的長度是不固定這是不可能的(如果該文件不存在索引)。 – BLUEPIXY
真的沒有辦法做到這一點,因爲你不能說在一個普通的文本文件中的文件行開始的位置。你只需循環,並在所需行之前閱讀(並放棄)所有行。 –
如果「行」具有固定長度,則可以使用'fseek'。否則,沒有辦法做到這一點。 – szczurcio