2017-10-02 21 views
0
void megaadmin() 
    { 
     system("cls"); 
     cout<<"this console is only for registering new admins"; 
     cout<<"please enter the required username"; 
     string temporary_string; 
     cin>>temporary_string; 
     ofstream f("admin_details.txt",ios::out|ios::app); 
     f<<temporary_string; 
     cout<<"please enter the password"; 
     cin>>temporary_string; 
     f<<temporary_string; 
     cout<<"would u like to enter more usernames and passwords if yes enter 1 eles 2"; 
     int n; 
     cin>>n; 
     if(n==1) 
      megaadmin(); 
     else 
      exit(0); 
    } 

admin_details.txtが作成したばかりですが、私が入ったユーザ名とパスワードの情報は、特定のテキストファイルofstreamの: - テキストファイルに出力しないファイルが作成されつつあるものの

に格納なっていません
+4

*ファイルの内容を*と*どのように*チェックしますか?おそらく、チェックする前にバッファをフラッシュするべきでしょうか? –

+3

また、(あなたの問題とは関係ありません)、私はあなたが表示するコードで再帰の代わりに*ループ*を使用することをお勧めします。 –

+0

また関係ありません: 'ofstream'に' ios :: out'を指定する必要はありません。 – molbdnilo

答えて

0

cin >> temporary_string;の後に、デバッグ用にcout << temporary_stringを追加して、文字列が正常に読み取られることを確認します。

これは、ストリームがフラッシュされていない可能性があるため、出力されません。 f.flush()に電話すると、そのコンテンツが表示されます。

ところで、プログラムを閉じると、ストリームも破棄中にフラッシュされるため、コンテンツも表示されます。

+0

私は正確にフラッシュを理解していませんが、私はまだそれは動作していませんが、私は最近、完全にうまく動作しているいくつかのストリームで別のコードを作ったフラッシュはなぜ私はこの1つが動作していない理由を知らない –

+0

[this]をチェックしてください。 com/questions/14105650/how-does-stdflush-work)何が流出しているかを見る –

関連する問題