2010-04-09 136 views
0

我有一個文件,其中每行包含兩個數字。問題是兩個數字之間用空格隔開,但空格可以是任意數量的空格。一個,兩個或更多。我想讀取該行並將每個數字存儲在一個變量中,但我不確定如何標記它。如何從文件中讀取值。 tokenizer

i.e 
1 5 
3 2 
5 6 
3 4 
83   54 
23 23 
32 88 
8   203 

回答

4

閱讀每一條線,棒線的內容轉換爲stringstream,然後讀取兩個int出列:

std::string line; 
while (std::getline(myfilestream, line)) 
{ 
    std::stringstream ss(line); 
    int i, j; 
    if (ss >> i >> j) 
    { 
     // use i and j 
    } 
} 

如果你知道一個事實,即每一行都會有正好兩個int(即,你完全信任你的源),你可以直接從流中讀取值。

+0

謝謝。完美地工作。 – user69514 2010-04-09 04:08:07