我必須在C++中讀取大文本文件(> 10 GB)。這是一個帶有可變長度行的csv文件。當我嘗試使用ifstream逐行閱讀時,它可以工作,但需要很長時間,我想這是因爲每當我讀取一行到磁盤並讀取時,都會導致它很慢。在C++中高效地讀取大文本文件
是否有讀取bufferes的方法,例如一次讀取250 MB(使用ifstream的讀取方法),然後從此緩衝區中獲取行,我發現很多問題與解決方案(如緩衝區可能有不完整的行等) ..
是否有一個解決方案在C++中處理所有這些情況等等。是否有任何開源庫可以做到這一點,例如boost等?
注:我會想可以避免C麥粒腫FILE *指針等
標準庫已經使用緩衝區。這需要很長時間,因爲文件很大。也許你正在做別的事情。發佈您使用的代碼,我們可以對此發表評論。 – 2011-02-01 06:21:37