C++は初めてですが、プログラミングの経験はあります...
ユーザーからファイル名を取得してからファイルを開くという非常に基本的なアプローチを試みています。私はいくつかの非標準ライブラリ (スタンフォード ライブラリ) を使用していますが、それが影響を与えるとは思いません。
ifstream in;
while(true){
string filename="";
cout << "Enter the name of the file. ";
getline(cin, filename);
in.open(filename.c_str());
if (in.fail()){
cout << "ERROR opening file. Try again.";
} else {
break;
}
}
... more code ...
最初に有効なファイル名を入力すると、問題なく動作し、先に進みます。無効なファイル名を入力すると、エラー メッセージが表示され、別のファイル名を要求するためにループしますが、ファイルが有効であっても、後続のすべてのエントリが無効として扱われます。私が間違っていることはありますか?ありがとう!