我想提取和分析大型文本文件中的數據。數據包含浮點數,整數和單詞。如何從包含空格和換行符的文本文件中提取特定數據?
我想這樣做的方法是使用std :: getline()提取一個完整的行(最多換行)。然後從前面提取的行中提取單個數據(提取直到空白,然後重複)。
到目前爲止,我有這樣的:
int main()
{
std::ifstream myfile;
myfile.open("example.txt", std::ios::in);
if(!(myfile.is_open()))
{ std::cout << "Error Opening File";
std::exit(0); }
std::string firstline;
while(myfile.good())
{
std::getline(myfile, firstline);
std::cout<< "\n" << firstline <<"\n";
}
myfile.close();
return 0;
}
我有幾個問題:
1)我如何提取到一個空白?
2)什麼是最好的方法來存儲數據?大約有7-9個數據類型,並且數據文件很大。
編輯:文件的一個例子是:
結果時間電流路徑要求
PASS 4時31分05秒14.3 Super_Duper_capacitor_413 -39.23
FAIL 4時31分45秒13.2 Super_Duper_capacitor_413 -45.23
。 ..
最終我想分析數據,但到目前爲止我更關心正確的輸入/閱讀。
'getline'有另一個參數來指定分隔符。 – Djon
然後在std :: getline(myfile,firstline)之後使用另一個getline(firstline,'')? – Splaty
是的,我在答案中展示了一個例子。 – Djon