ファイル内のテキストを正常に読み取ることができましたが、テキストなどの空のスペースにヒットするまで読み取ります。「こんにちは、これはテストです"、のようなもの:"こんにちは、 "。ファイルから読み込み、空白になるまでテキストのみを読み取る
"、"を削除すると違いはありません。
私は次のコードビットに「inFil.ignore(1000,'\n');
」に似た何かを追加する必要があると思う:
inFil>>text;
inFil.ignore(1000,'\n');
cout<<"The file cointains the following: "<<text<<endl;
それは本質的なプログラムをやり直すために私を強制するので、私はgetline(inFil, variabel);
に変更したくありませんワーキング。
ご協力いただきありがとうございます。これは非常に小さく簡単に修正された問題のようですが、解決策を見つけることができないようです。
をそれの動作を変更する必要がある場合には、プログラムをリファクタリングするために良いことです。読み込み部分の周りにテストを書いて、 'readline'のために行ってください。テストを受けたら、プログラムの変更を開始し、プログラムの安全性を感じることができます。 – xtofl
"本質的に働いているプログラムを再実行するよう強制する__"プログラムが "Hi"を読み、 "Hi、this is a test"と読みたい場合、プログラムは "_essentially working_"ですか? – curiousguy
getline()への切り替えがあなたにとって残虐行為になる理由は本当にわかりません。これは、あなたが探している小さくて簡単な修正点を除いて、コード内で何も変わりません。 ignore()をするのよりもエレガントな方法。メー、ラインを取得したいのですが、なぜgetlineを使用しないのですか?そして、ええ、 "本質的に働く"、素晴らしい。 –