我想解析文本文件中的行。每一行代表一個股票代碼並具有相同的格式,有隨機數字的字符串(公司名稱+符號),然後是統一數量的浮動(每行的金額相同)。解析一個文本文件,直到找到一個浮點數?
如何檢查最後一次讀取的字符串是否爲浮點數,以瞭解何時到達字符串末尾並開始解析浮點數?文字
採樣線:
A.M. CASTLE & COMPANY CAS 15.71 0.55 3.63 31.57 17.97 8.99 7.79
AAR CORP AIR 17.79 0.19 1.08 30.62 18.45 10.51 38.26
ABBOTT LABORATORIES ABT 45.14 0.01 0.02 -3.24 50.00 40.25 20.33
示例代碼:
void parse(string filename){
ifstream myfile;
string line;
string current_word;
myfile.open(filename);
if (myfile.is_open()){
while (getline(myfile, line))
{
stringstream current_line(line);
while (current_line >> current_word){
// How can I test when I have reached a float here?
}
}
}
}
你應該在你的問題中包括一個[最小,完整和可驗證的例子](http://stackoverflow.com/help/mcve)當前嘗試,所以我們更好地瞭解你在做什麼。這將幫助我們提供一個合適的答案。 – 2014-09-22 02:17:08
你保證在第一個浮點數之前沒有數字出現嗎? – 2014-09-22 02:17:38
是的,只有字母或標點符號(連字符,圓括號,&符號等)在字符串到達之前。 – CGutz 2014-09-22 02:22:38