2017-10-06 16 views
-1

テキストファイルから2つの配列にファイルを読み込もうとしています。私は他の関数やメインにある問題を排除しており、コードは約5行残っています....ファイルを複数の配列に読み込む

これは私の文書を最後まで循環しますが、一度だけtxtを入力しますループ。どんな考えもすばらしいでしょう!このため

void load_donations(string donor[], string donation[]) 
{ 

    string text; 

    cout << "What *.txt file would you like to load? "; 
    cin >> text; 
    text += ".txt"; 
    cout << text << endl; 
    ifstream infile; 
    infile.open (text.c_str()); 
    int i = 0; //moves to next slot in array 

    while (!infile.eof()) 
    { 

     getline(infile, donor[i]); 
     getline(infile, donation[i]); 
     i++; 

    } 

    infile.close(); 
} 
+0

この仕事の寄付[私] =ドナー[私]? – brownKnight

+0

私はあなたが何をすべきかを確信していません... しかし、私が望むのは私の.txtファイルです。 ジミー細かい 靴 ヘンリー 現金 氏Biggles 食品その後 スティーブ 時間 すべての偶数ラインドナー[i]と[i]の配列に入る奇数ラインに入ります。私の問題は、それは1つのループを行っているように見えるだけです。私がループカウンターを書いた場合、それは配列にそれらを保存していないすべての行を通過することを示します。 – Hooch

+0

関連しない[なぜループ状態のiostream :: eofが間違っていると思われるのですか?](https://stackoverflow.com/questions/5605125/why-is-iostreameof-inside-a-loop-condition-considered-wrong) – user4581301

答えて

-1

、あなたは文字で、ファイルの文字から読み取られていることにループ内で動的配列内の文字を保存し、ダイナミック文字の配列、および を宣言する必要があります。

これは意味がありますか?

+0

これは...ストリングストリームのようなものですか?私の問題は、それがほぼそのまま動作しているように見えることであり、ダイナミックアレイは今は行っていません。 – Hooch

+0

テキストファイルのスクリーンショットを投稿できますか? –

1

問題は、私はこの機能から私の配列をプリントアウトした関数にカウントを渡していないということでした。ピーターが提案したような最小限の作成に着いたときに気がつきました。私の邪魔にならないように気をつけてください。

+0

これは、MCVEがすべての成功したプログラマーのツールボックスの一部である理由です。とにかく、私が知っているすべての人。 'while(!infile.eof())'バグを修正することを強くお勧めします。 'while(getline(infile、donor [i])&getline(infile、donation [i]))を使用してください。 } ' – user4581301

関連する問題