2018年03月18日
《その340》 行単位の読込み
抽出子 >> を使って文字列を読み込むと、スペースなどの空白文字は、区切りと解釈されてしまうため、空白文字を文字として読み込むことができません。
空白も含めて、文章を行単位で読み込むには、getline関数を利用します。
※getline関数についての詳細は、本ブログ《325》をご参照ください。
basic_istream& getline(
basic_istream&& is,
basic_string& str,
char delim = '\n'
);
以下は、プログラムです。
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main() {
ifstream fis("tsurayuki.txt");
if (!fis)
cout << "ファイルをオープンできません。";
else {
cout << "------------\n";
for (;;) {
string tmp;
getline(fis, tmp);
if (!fis) break;
cout << tmp << '\n';
}
cout << "------------";
}
cout << '\n';
}
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
https://fanblogs.jp/tb/7450015
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック