2011-08-01 6 views
0

単純なファイルの読み込みに問題があります。私は最初に数えてT/Fの4つの長いラインを4つ持っています。私はmyfile >> count、myfile >>の値で値を取得してカウントを取得して行を終了し、次の行に移動しますが、何らかの理由で3行目に問題があります。ここでデータファイルを取得する方法がわからない...お探していただきありがとうございます!C++ファイルの読み込みループが壊れる

int main() { 
    ifstream myfile; 
    int count; 
    string value; 

    myfile.open("branches.txt"); 

    while(!myfile.eof()) { 
     myfile >> count; 
     cout << count << endl; 

     while(count > 0) { 
      myfile >> value; 
      count--; 
      //cout << value; 
     } 

     myfile >> count; 
    } 

    system("pause"); 
    return 0; 
} 
+0

この投稿をファイルの正確な内容で更新できますか? –

答えて

2

です。

4

はそれだけで前回の読み出しの結果は何であったかがわかりますfeof()を使用しないでください。 whileループの開始時と終了時:ファイルを読むための正しい方法は、あなたが行ごとにcount二回を読み取ろうとしているように見える

while(read(file, buffer)) 
{  
    //do something 
} 
+1

この場合 'while(myfile >> count)'です。 –

+2

実際には読み取り中(..)> 0) –

関連する問題