ファイルの名前を入力し、そのファイルが存在する場合はファイルのすべての内容を出力します。ファイル名を入力してテキストを読み取る
現在、非コメント化コードは、ユーザーが入力するファイルの名前を取ります。 example.txtを入力し、ファイルの最後の単語ではなく、ほとんどを出力します。私はこれを文字列を使って実装しようとしました(コメント付きコードは試行です)が、間違っています。
私は自動的にユーザー入力の末尾に.txtを追加することができますので、コンソールは次の質問をすることができますか? - 「ユーザー入力」の詳細については、 .TXT」ここ
がI'veが試したものです:
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
using namespace std;
int main() {
char filename[50];
//string getcontent;
ifstream name;
cin.getline(filename, 50);
name.open(filename);
if (!name.is_open()) {
exit(EXIT_FAILURE);
}
char word[50];
name >> word;
while (name.good()) {
cout << word << " ";
name >> word;
}
//if (!name.is_open()) {
//while (! filename).eof())
//{
//getline(name, getcontent)
//cout << getcontent << endl;
//}
//exit(EXIT_FAILURE); //comes from cstdlib
//}
//}
system("pause");
return 0;
}
あなたは 'のstd :: STRING'を使用することができるときなぜあなたは' '[50]をchar型のファイル名を使用していますか? – InternetAussie
同じことが 'char word [50]'にはありません。これはC++です。また、 'system(" pause ")'は移植性がないため、悪い習慣です。代わりに 'std :: cin.get()'を使用してください。 –