【发布时间】:2015-08-31 15:16:27
【问题描述】:
比方说,我有几个数字的文件 input.txt
1 2
4 51
3 77
现在,我正在尝试执行此命令:
`string filename="input.txt";
ifstream ifs;
ifs.open(filename);
ifs>>x>>y;
fstream tmp("temp.txt",ios::out);
tmp<< ifs.rdbuf(); `
现在文件 temp.txt 看起来像
(空白)
4 51
3 77
那么,这是因为我没有读到行尾吗? "ifs" ponter 只是移动了两个整数,剩下的行的结尾被留下了。 为什么在第一个文件中,我可以循环使用
ifs>>x>>y;
在第二个 (tmp) 中不是吗?另一方面,如果我手动创建带有空白空间的 temp.txt,上面的命令会立即起作用。为什么不一致?
谢谢。
【问题讨论】:
标签: c++ fstream ifstream ostream