イテレータを含むファイルを別のファイルにコピーする方法を見つけました。
ifstream ifile("file1.txt");
ofstream ofile("file2.txt");
copy(istream_iterator<string>(ifile),
istream_iterator<string>(),
ostream_iterator<string>(ofile, " "));
それは機能しますが、残念ながら「file1.txt」からのすべてのテキストは「file2.txt」では1行にしかありませんが、「file1.txt」には元々多くの行があります。
イテレータのループ間で文字列を変更しようとしました:
copy(istream_iterator<string>(ifile),
istream_iterator<string>(),
ostream_iterator<string>(ofile, "\n"));
しかし、「file2.txt」での結果はさらに悪いです - すべての単語が別の行にあります。
私の質問: イテレータを使用してファイルをコピーする方法はありますが、情報を失うことはありませんgetline()
か?