我有一个包含数十亿行的巨大文件。每行有以下格式:对特定格式字符串进行高效分割
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?这很多 –