2016-02-01 133 views
0

從C++文件讀取時如何跳過空行? 的設置是:我有一個文本文件,每個文件包含50個問題,然後是4個可能的答案。我使用一個二維數組來存儲所有的這樣的:問題[50] [5]從C++文件讀取時,如何跳過空行?

所以文本文件的結構是這樣的:

1行的長度的問題

回答一個

應答b

答案C

答案d

1行的長度的問題

回答一個

應答b

答案C

答案d

等..

有問題之間沒有間隙或任何答案,但是在每個問題組和4個答案之間,都有未知數量的空白行。

我正在使用一個循環來輸入問題和答案到我的數組中的每一組問題,但我怎樣才能跳過每一組問題的未知數量的空行?這裏是我的代碼

//reading in the questions 
    for(int i = 0; i < 50; i++) 
    { 


    while(getline(qFileIn,test)) //seeing if its empty 
    { 
      if(test.empty()) 
        continue; 
      if(!(test.empty())) 
        break; 
    } 
      for (int j = 0; j < 5; j++) 
      { 

        getline(qFileIn,questions[i][j]); 
      } 

    } 

我真的想跳過內這兩個for循環的地方空行掙扎,我會非常感激一些幫助。 謝謝!

+2

試圖跳過一行代碼的部分是好的,但實際上每六行執行一次... –

+1

試着問一個橡皮鴨,(https://en.wikipedia.org/wiki/ Rubber_duck_debugging)尋求幫助 –

+0

但是當我使用getline跳過一行時,我仍然只是在閱讀它,如果它不是空行,那麼我就不能再次讀取同一行並將該行保存在問題中排列 – Jolaroux

回答

0

試試這可能是qFileIn.ignore(256,'\ n');它跳過空行。

相關問題