我有一個包含數十億行的巨大文件。每行有以下格式:對特定格式字符串進行高效分割
A B C D
我只需要B和C的字符串不是字符的值。
我目前的分裂策略如下:
std::stringstream ss;
std::string line, temp, bValue, cValue;
while (std::getline(infile, line)) {
ss.clear();
ss.str(out_str);
std::getline(ss, temp, '\t'); // Skip value of A
std::getline(ss, bValue, '\t'); // Set value of B
std::getline(ss, cValue, '\t'); // Set value of C
// Use values...
}
由於輸入文件中包含幾十行的,即使是微小的改進會對我的程序一般性能的影響。
任何想法或庫來提高性能?你有沒有遇到同樣的瓶頸並修復它?
謝謝。
閱讀在索引2和4,獲得字符整條生產線,沖洗和重複。 –
讀取所有四個值,丟棄第一個和最後一個? –
Billions?這很多 –